workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
分开部署,
GatewayWorker
如何把消息收到的消息转
发
给webman?
#### 问题描述 业务都在webman,
GatewayWorker
没有和webman部署在一起,
GatewayWorker
和webman分开部署开
发
,但在一个内网,有办法直接把收到的消息转
发
给webman
问答
自定义
进
程内存占用过大
使用自定义
进
程 由于需要统计用户的一些
数
据
,需要把用户表的所有
数
据
读取到内存,然后再做
进
一步的统计和分析。所以会导致内存占用增大。所以有以下4个问题想请教 1.自定义
进
程能否使用ini_set('memory_limit',256m)的这种代码,因为我想为单独这个
进
程扩大内存的使用,如果在php.ini修改应该是对所有的都生效。2.自定义
进
程能否手动释放内存且立即生效(或者说立即生效是指不会触
发
内存溢出的错误) 3.像这种用户
数
据
的统计分析用什么样的方案比较合适?主要是涉及到递归查询 计算和更新,如果用
数
据
库去处理也很麻烦。 4.像
数
据
的批量插入
数
据
库,应当是一次性插入还是分批插入。比如有10万条
数
据
的
数
组,用array_chunk分批插入还是直接一次性插入
问答
【已解决】两个响应
数
据
中间的问题
#### 问题描述 定义了两个中间件: - `DesensitizeMiddleware` 响应
数
据
注解脱敏中间件 - `ResponseCaseConverter` 响应
数
据
下划线转驼峰 现出现一个问题:当我定一个字段`id_card`,
数
据
脱敏并将字段名变成`idCard`,这个时候,就不能脱敏成功,需将`ResponseCaseConverter`移除掉,才能正常响应脱敏 中间件配置: ```php; /** * 注解脱敏中间件 */ class DesensitizeMiddleware implements MiddlewareInterface { /** * 响应
数
据
的根路径field]; } } // 应用脱敏规则 if (is_array($targetData)) { // 根
数
据
是
数
组Helpers\CamelHelper; use Webman\Http\Request; use Webman\Http\Response; use Webman\Middleware; /** * 响应
数
据
下划线转驼峰
问答
数
据
库查询问题
这样写就查不到
数
据
```Mysql::$connect->select('title')->from('users')->where('id in (:ids)')->bindValues(['ids'=>'58,59'])->query();``` 这样写就可以查到
数
据
```Mysql::$connect->select('title')->from('users')->where('id in(58,59)')->query();``` 我想用第一种写法查询
数
据
,请问应该怎么解决呢
问答
使用workerman
发
起压测
使用workerman
发
起的压力测试 测试 wss 到250左右就断开了 3个扩展都安装了 第一个压测的脚本 第
二
个是结果
gatewayworker
版本是 3.5.17
问答
打
二
进
制
包运行后,CPU占用率100%
#### 问题描述 如图:   不知道是什么原因,请问有什么解决方法吗?
问答
关于Gateway全局$_SESSION的不同步问题
首先这个$_SESSION在gateway和worker之间也是通过Socket通讯的,这里就产生一个
数
据
延迟问题,在项目的反复实践中被证明存在问题。当写入$_SESSION
数
据
量比较大时尤其明显,比如写入2k以上
数
据
。即便强
制
同步了,由于
进
入包连续
进
入,立刻会触
发
下一次的OnMessage,无论是否强
制
读取,得到的都是上次更新之前的旧
数
据
。
问答
webman/log 无法打印gateway events里的
数
据
库查询语句吗?
webman/log 无法打印gateway event里的
数
据
库查询语句吗?webman安装gateway 在events的onMessage方法里有查询语句,安装webman/log 好像无法打印里面的查询语句 但是可以打印webman控
制
器的查询
问答
关于“
数
据
或者资源可以全局共享”
workerman的优点中有一条“
数
据
或者资源可以全局共享”,请问怎么实现?我想在Event.php中用mysql_connect()创建一个
数
据
连接$db_conn,然后后面有新的连接
进
来时,可以不用再次连接,如何做?
问答
作为客户端
进
行wss订阅
我想用workerman作为客户端去订阅其他网站的信息,那边有
数
据
就会向我
发
送
消息,但是一直没有信息。 linux链接一段时间后就会关闭。
问答
在websocket的onWorkerStart方法中,能否
发
送
send到客户端?
www.workerman.net/upload/20200219/195e4d50140e69.png) 需求是这样的,在onWorkerStart中,定时检测并异步执行耗时任务,当有客户端连接ws时,可以实时获取该
进
程任务的执行日志我在想,既然timer和websocket同属于一个
进
程,那么能否不用中间件,直接在onWorkerStart里
发
送
send给客户端呢?
文档
onMesssge
Events::onMessage ## 说明: ```php void Events::onMessage(string $client_id, mixed $recv_data); ``` 当客户端
发
来
数
据
(Gateway
进
程收到
数
据
)后触
发
的回调函
数
## 参
数
``` $client_id ``` 全局唯一的客户端socket连接标识 ``` $recv_data ``` 完整的客户端请求
数
据
,
数
据
类型取决于Gateway所使用协议的decode方法返的回值类型 ## 返回值 无返回值,任何返回值都会被视为无效的 ## 范例 ```php use \
GatewayWorker
\Lib\Gateway; class Events { /** * 有消息时触
发
该方法 * @param int $client_id
发
消息的client_id *return void */ public static function onMessage($client_id, $message) { // 群聊,转
发
请求给其它所有的客户端
问答
Gateway的sendToClient怎样才能获取到设备的响应
数
据
Client端 向 Server端获取资源,向Server端
发
送
HTTP请求。 2. Server端 收到 Client端的HTTP请求后,判断Client端是否需要鉴权。Unauthorized回复后,Client通过返回的algorithm加密算法,对Server端返回的realm、nonce值,用户名ApiAdmin、密码、HTTP url、HTTP method
进
行加密计算Client端重新
发
送
请求,请求报文头加入Authorization字段,计算出的Digest-Response作为repsonse值。 4. Server端收到Client端重新
发
送
的请求,根
据
用户名ApiAdmin、密码,采用Client端一样的方法计算出Digest-Response(计算方式查看下方的Digest加密计算公式)。然后将计算出Digest-Response和收到的response值
进
行比对,比对一致则返回200 OK; 比对不一致则返回 401 Unauthorized,其中响应的报文头加入WWW-Authenticate
问答
GatewayWorker
前置负载均衡
#### 问题描述
GatewayWorker
框架,有个问题想咨询,Gateway 框架前加了一个网关,网关负载均衡到 Gateway,但是cliend_id是由Gateway创建,如果客户端创建连接时,负载均衡到了Gateway1,
发
送
消息时到了Gateway,这样怎么处理
问答
binary协议前台js如何
发
送
数
据
?
如题,搭好了workerman和binary协议,用client.php上传没有问题,但是js使用如下代码: ```javascript var ws=new Websocket(wss://******:8080); ws.send(data); ``` 报错 连接502,但是client.php又能上传. 所以问下js应该怎么写才能用binnary协议传文件,谢谢.
问答
http-client 最大并
发
数
#### 问题描述 我
发
现 http-client 是有最大并
发
数
的 比如修改配置参
数
中的max_conn_per_addr 就能调整最大并
发
参
数
了 $options = [ 'max_conn_per_addr然后 定频的去从队列中 获取 要请求的
数
据
。 然后
发
起请求 但是 这又带来一个问题。 因为 被请求方,有时候响应快 有时候响应慢。我就不知道 http-client 当前有多少并
发
连接
数
了。 我要怎么获取到当前的并
发
连接
数
呢?因为如果 并
发
连接
数
满了的话, 我这时候去
发
去请求,他是无效的 彷佛直接未执行该动作一样 记录并
发
请求
数
。所以 http-client 类的话有直接获取到当前并
发
的请求
数
嘛?
问答
gatewayworker
链接成功,但是 onConnect不成功
gatewayworker
链接成功,但是 onConnect不成功,这种情况偶尔出现一次,onConnect不成功则前端
发
送
消息也无法通讯,这个是什么问题导致??检查了1天了
问答
奇怪:接收非utf8包客户端全部断线?[已解决]
JAVA的同事,
发
数
据
包给我这边,当没有指定为utf8编码时,他一
发
送
,我这边全部的客户端都会被强
制
关闭,接收不到
数
据
,如果指定为utf8编码,则监听,接收正常。
问答
linux下异步tcp返回无
数
据
(已解决)
在windows中 $connection_to_hsm->onMessage能够得到返回的
数
据
,linux中得不到,不知道我的代码写的是不是有问题?$connection->send($buffer); }; // 执行异步连接 $connection_to_hsm->connect(); // 客户端
发
来
数
据
时,转
发
给对应的连接 $connection->onMessage = function($connection, $buffer)use($connection_to_hsm) {
问答
thinkphp5.1直接用控
制
器启动workerman可以吗
直接用tp的控
制
器来启动workerman可以吗。 是否会影响TP的性能,导致其他控
制
器访问的时候加载慢? 在workerman的定时器中使用TP的
数
据
库类是否会影响TP正在操作的业务?
« 上一页
1
...
57
58
59
60
61
62
63
64
...
449
下一页 »
« 上一页
60
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝