workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
关于workerman定时任
务
根据一张数据表的每行数据的
不
同开始时间定时任
务
逻辑怎么做
分享
🚀 我的第三个webman插件 webman/jwt 认证插件
JWT的声明一般被用来在身份提供者和服
务
提供者间传递被认证的用户身份信息,以便于从资源服
务
器获取资源,也可以增加一些额外的其它业
务
逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。认证服
务
器验证用户名和口令后,以服
务
器端
生
成`JWT Token`,这个token的
生
成过程如下: - 认证服
务
器还会
生
成一个 `Secret Key`(密钥) - 对`JWT Header`和`JWT然后把 `base64(header).base64(payload).signature` 作为 `JWT token`返
回
客户端。 > 4.| 参数|类型|描述|示例值| |:---|:---|:---|:---| |token_type| string |Token 类型 | Bearer | |expires_in| int |凭证有
效
时间" -f RS256.key openssl rsa -in RS256.key -pubout -outform PEM -out RS256.key.pub ``` ## 🚀 视频地址 >
不
懂的同学可以了解一下视频
问答
付費求助,https的采集,证书问题
主要代码如下 客户端证书
不
行,采集
不
了 求有经验的大佬指导 价格好说 QQ43950 ```php <?$host,$context_option); ``` 关键问题是,我
不
知道证书该怎么
生
成,网上大多是服
务
器端证书 客户端证书我用KeyManager
生
成了,但是提示
不
对
问答
webman 一个
不
能确定是否是BUG 求重示
当配置路由后 静态文件全失
效
``` use Webman\Route; Route::any('/{id}', [app\controller\Index::class, 'about'])执行流程应该错了
不
是应该根据请求头来判断是否为静态文件吗?具体我暂时还没有深入去看匹配的流程。 个人应该认为,第一先判断请求头是否为图片,CSS,JS,然后再判断请求的是
不
是文件之类的。
文档
onWorkerStart
# onWorkerStart ## 说明: ```php callback Worker::$onWorkerStart ``` 设置Worker子进程启动时的
回
调函数,每个子进程启动时都会执行。##
回
调函数的参数 ``` $worker ``` 即Worker对象 ## 范例 ```php <?\n"; }; // 运行worker Worker::runAll(); ``` > **提示** > 业
务
可以根据worker->id来区分
不
同的进程从而执行
不
同的业
务
逻辑,例如只在0号进程执行某个业
务
,具体[参考这里](workerid.md) > **提示** > 除了使用匿名函数作为
回
调,还可以[参考这里](../faq/callback_methods.md)使用其它
回
调写法。
分享
workerman多进程定时任
务
(非crontab)
功能: 1、执行周期:可按月、周、天、时、分定时执行,也可按天、时、分延时执行 2、任
务
类型:可在此架构基础上,很方便的添加其他类型的任
务
,已经内置邮件群发 3、任
务
日志:
不
仅可以查看历史执行日志,还可以通过websocket实时查看某个任
务
正在执行的具体日志 4、api接口:可通过http和redis两种方式,对任
务
增删改查 5、任
务
分割:多个任
务
多进程同时执行
不
会影响定时器,另外,如果某个任
务
类型比较复杂
问答
设备端
不
间断发送了1000条数据 已经停止了 服
务
端还在处理数据 要等一段时间才能结束 为什么?
#### 设备端
不
间断发送了1000条数据 已经停止了 服
务
端还在处理数据 要等一段时间才能结束 为什么?gateway 将请求加入队列中了吗 我想知道到底是 阿里云端做的处理 还是网关gateway做的处理 怎么实现的 代码在哪里 我想看看 #### 第二个问题 在大量请求过来的时候(1000个
不
间断请求) 服
务
端处理业
务
有点慢 设备都停止了 服
务
端还
不
停的处理 我想知道 怎么提高业
务
处理性能 因为观察发现服
务
器的cpu 和内存并没有明显的增加 感觉可能都是在数据库操作 上花费了大量时间 php的性能好像
不
像是瓶颈 我用得think-orm 感觉 连接数据库应该是长连接了
不
知道怎么优化
分享
关于如何使用dockerfile -d 启动webman的那些
事
我一想,webman
不
是自带来守护进程模式吗?workerman里面采用的是Master进程监控子进程的模式启动的,因此是支持守护进程模式的。如果还要依赖第三方来进行守护那么自带的守护模式 `-d` 是
不
是就没有存在的意义了。 !既然知道问题是
不
是可以加一个前置进程解决这个问题?,当nginx出现问题挂掉的时候docker容器也会跟着退出,从而
不
能为用户提供服
务
。重点就在于 `tail -f /dev/null` 它会一直阻塞在等待,这样就能实现webman的守护进程又能保持容器
不
会退出。
问答
不
能长时间链接,一段时间
不
操作,需要重新启动服
务
才行。
[截图](//www.workerman.net/upload/20201119/195fb616b01ccf.png) 重启服
务
之后就可以链接了。
问答
WebSocket 当前连接收到了
不
属于它的订阅数据
#### 问题描述 WebSocket 当前连接收到了
不
属于它的订阅数据,新手,
不
知道是变量污染还是其他问题,求兄弟们帮忙看一下。#### 为此你搜索到了哪些方案及
不
适用的原因 protected $socket = 'websocket://0.0.0.0:8090'; protected $clients= []; /** * 连接成功
事
件 * @param $connection */ public function onConnect($connectionsubscriptions' => [], // 存储订阅的频道信息 'timerId' => '' ]; } /** * 接收消息
事
件unset($subscriptions[$key]); break; } } } /** * 心跳
事
件
问答
TP5.1 命令启动GatewayWorker,提示windows
不
支持
TP5.1已经composer安装了GatewayWorker,但是在cmd命令里面根据文档输入 php think worker:gateway,提示
不
支持windows php think worker以及php think worker:server是成功的,但是php think worker:gateway就提示
不
支持 [attach]2117[/attach] 就没人
回
答一下嘛
问答
webman 怎么
生
成二维码?
用了phpqrcode弄了好久还是
不
行~
问答
webman http-client用法
假设webman只能开一个进程 假设https://example.com的响应时间是1-10秒,可能根据传入的参数
不
同,响应时间也
不
同 ``` public function test(Request); // 同步请求 $response = $http->get('https://example.com/'); // 同步请求是假设每次的响应时间都是10秒,那么处理的
效
率就只能依赖前一个请求的响应代表response结束 }); //return response()->withHeaders(["Transfer-Encoding" => "chunked",]); //
不
太确定这里是立即返
回
还是保存的上下文信息以等待处理完成,看上面的return代码应该是立即返
回
// 如果是立即返
回
了,但是请求端希望拿到具体的响应结果,且
不
需要做额外的处理,就按正常的同步请求处理 } ``` 请问testAsync应该怎么处理可以达到增加并发,而且
不
需要调用端额外处理?
问答
phpsocket.io 怎么验证客户端合法?
phpsocket.io 前端JS链接服
务
器,如何保证链接合法性呢?用origins限制访问域名,在服
务
器通过域名访问是有
效
的,在本地html文件链接服
务
器origins无法限制,有什么好办法解决?
分享
如何在webman中自定义全局处理错误
webman中
不
能使用die()和exit()等函数方法,用了会影响服
务
。 在框架中想要在任何地方都停止程序向后面继续执行,并响应错误到客户端怎么办呢?我们可以自定义异常处理类,默认的异常处理在composer的代码文件中,我们
不
能修改,但是我们可以通过修改配置文件,使用自己的异常错误处理类。的参数验证错误处理: 在代码中增加了如下代码,如果错误是CheckException类型的错误,就去直接响应客户端json数据,错误码和错误提示都可以获取,错误码可以修改该插件的配置,也可以在此处写死(根据自己的业
务
来,就会走这里的错误处理,注意配置文件一定要改,否则
不
生
效
!刚测试插件,如果是插件,请修改插件的exception.php,否则
不
生
效
。
问答
move上传照片获取路径
不
用response()返
回
,用json返
回
怎么显示
   
问答
GatewayWorker给对方发送
不
出消息
GatewayWorker给对方发送
不
出消息 tcpdump抓包可以看到对方向我传输的消息,但是但是就是发
不
出去,onmessage也没进入 我现在给对方强制下线也无
效
,消息根本就发送
不
出去,一直显示客户端在线3592745328 ecr 3456194934], length 0 o...z...........g+G..P....S.i. .$.p..Yv 这是onmessage,onmessage消息都打印
不
出来$client_id."】".PHP_EOL; } return; } } 我现在给对方强制下线也无
效
,消息根本就发送
不
出去,一直显示客户端在线7f0000010b5400000050"; // 检查客户端是否在线 if(Gateway::isOnline($client_id)) { echo "客户端在线"; } else { echo "客户端
不
在线
分享
基于webman开发的全文搜索 省去繁琐配置插件(支持elasticsearch,meilisearch,xunsearch)
- xunsearch的配置文件config/plugin/shopwwi/search/ini下创建index.ini文件即可 -
生
成密钥(如果
生
成了 启动meilisearch服
务
端的时候记得保持一致>get(); //限定查询数量 默认为20 $result = $search->limit(100)->q('我')->get(); //带条件搜索(一定要设定可检索字段
不
然无
效
``` - 获取指定文档 ```php $result = $search->first(2); ``` - 字段排序 ```php // 字段排序(一定要设定可排序字段
不
然无
效
search->where('type','B')->limit(100)->q('我')->get(); ``` - 获取原SDK方法(各方法请查看各选定器包说明文档) ```php //返
回
所选定器本身$search->getTasks(); // 查询所有任
务
```
问答
两个
不
同的tcp服
务
如何监听在同一个端口上?
#### 问题描述 目前服
务
器只开放了一个端口供互联网访问,现在workerman的一个tcp服
务
已经监听了此端口,如果再使用worker作mysql代理,或者其他方式怎么能实现?通过nginx tcp代理是否可行 ### 通过客户端链接mysql服
务
测试打印输出数据, !
问答
请问下webman的$request->get('id'),返
回
的都是string类型么?
id=1 使用 $request->get('id') 获取值时,发现是 string 类型,请问下什么情况下返
回
的是int呢?
« 上一页
1
...
79
80
81
82
83
84
85
86
...
483
下一页 »
« 上一页
82
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝