workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
断开连接后,还能接收到心跳
#### 问题描述 问题一 我在onWorkerStart方法里,通过mysql查询到所有设备上一次存的clientId 然后全执行一遍closeClient方法,全断开一遍 但
发
现断开后,还是能收到心跳
数
据
执行了closeClient之后, 查看getAllClientIdList,里面还是有这个clientId 问题
二
程序出错导致onWorkerStart方法重新被执行,之前已经连接的clientId
问答
微信模板消息大批量群
发
#### 如何使用workerman
进
行微信模板消息的推
送
? 微信小程序有10万人订阅了活动通知,比如这些人要在9点收到活动的通知消息。如何及时的推
送
消息呢?
问答
Gateway::sendToClient($client_id, $message_str) 客户端收不到消息。
用socket 在客户端和 服务器之间
进
行交互。onConnect的时候,向客户端
发
送
消息,可以收到。 但是,当onMessage 的时候 ,使用同样的方法,客户端收不到消息。虽然客户端收不到服务器消息,但是服务器可以收到客户端
发
送
过来的消息。```php $data_arr = [123, 0, 0, 0, 0, 93, 238, 85, 249, 0, 139, 0, 5, 1, 1, 0, 0, 2, 168, 123]; //-把
数
组转成字符串
发
送
给客户端
问答
workerman怎样给指定硬件终端推
送
信息?
**网页设置下
发
消息给某终端,那么服务器怎样把要下
发
的信息推
送
给指定的终端?**
问答
为什么json-rpc的rpcclient不保持长连接,而是每次接受完
数
据
就关闭
为什么json-rpc的rpcclient不保持长连接,而是每次接受完
数
据
就关闭
问答
webman 怎么向某个client_id对应的连接
发
消息
原来gateway 有指定client_id
发
送
,webman里怎么指定 public static function onMessage($client_id, $message) { Gateway::sendToClient($client_id,'已经
发
送
,正在断开'); }
问答
workman启动后正常运行一段时间到了晚上固定时间服务端收不到客户端的信息
启动后正常运行一段时间到了晚上固定时间服务端收不到客户端的信息 使用后台运行启动workman gateway服务 到了晚上八点多 会提示内部端口被拒绝 然后服务端收不到客户端的信息,通过TCP测试软件,还能够正常连接,能够向服务端
发
送
消息但是收不到回复,检查workman的
进
程还在运行,使用restart重启服务后 服务端又能够收到消息并正确回应客户端 #### 程序代码或配置 ``` <?\Gateway; use \
GatewayWorker
\BusinessWorker; use \Workerman\Autoloader; // 自动加载类 require_once __DIR_"); // gateway名称,status方便查看 $gateway->name = 'litapowerGateway'; // gateway
进
程
数
$gateway->count = 4; // 服务注册地址 $gateway->registerAddress = '127.0.0.1:1238'; // 心跳间隔 //$gateway->pingInterval = 10; // 心跳
数
据
文档
workerman/redis-queue
\n"; echo $exception->getMessage(), "\n"; var_export($package); }); // 定时向队列
发
送
消息消费失败后消息会放到延迟队列等待重试,重试次
数
由 `max_attempts`控
制
,重试间隔由`retry_seconds`和`max_attempts`共同控
制
。` `attempts` `max_attempts`等信息 支持更改内部
数
据
结构`$package`的值,只需要将更改后的`$package` return 即可。` ------------------------------------------------------- ## 在非workerman环境向队列
发
送
消息 有时候一些项目运行在apache或者php-fpm环境,无法使用workerman/redis-queue项目,可以参考如下函
数
实现
发
送
``` function redis_queue_send($redis, $queue, $data
文档
协程并
发
Parallel
[1,2,3,4] }; Worker::runAll(); ``` ## 接口说明 ```php interface ParallelInterface { /** * 构造函
数
,$concurrent为并行任务
数
,-1表示不限
制
并行任务
数
*/ public function __construct(int $concurrent = -1); /*void; /** * 等待所有任务完成并返回结果 */ public function wait(): array; /** * 获取任务中
发
生异常的结果
问答
这两段java代码,用php怎么翻译?求指点!
Signature.getInstance("MD5withRSA"); signature.initSign(priKey); signature.update(data);//data为要生成签名的源
数
据
字节
数
组return Base64Util.encodeBase64(Base64Util.encodeBase64(signature.sign()).getBytes()); ``` 片段
二
: ```javapublicKey);//对提供的公钥做base64解码 byte[] sign= Base64Util.decodeBase64(Base64Util.decodeBase64(sign))//签名需要做
二
次
问答
客户端消息推
送
的适用场景有哪些呢?
在webman/push插件中有一种方法是客户端之间的推
送
,这种推
送
方式的应用场景,我可以想到在线聊天,通过客户端推
送
将消息A传递给B,此时消息是不过服务端的,此时我想存储聊天记录只能在
发
送
消息时,只能在
发
出消息时但是我想到实现聊天室的方式,还可以通过api接口,将信息提交到服务端,服务端在存储聊天记录的同时,还可以通过push服务端推
送
到相应客户端。 请问客户端推
送
还有那些应用场景呢?如果是做聊天,使用以下那种方案会更好一些呢 1.客户端之间推
送
。2.提交到服务器中,在推
送
到相应客户端。? push推
送
时,如何判断相应接收方是否在线呢?在线才推
送
没在线就不推
送
问答
workerman
还要我想用于物联网 GSM和他socect通信 他怎么将
数
据
发
送
给tcp 板子 GSM已经链接我的主机,还要安装成功显示什么??
问答
如何用dd或dump获取到查询构造器生成的sql语句
在控
制
器中用 Db::table('part')->where('id','>',6)->get()->dump(); 只是在控
制
台输出了获取到的
数
据
,并未看到SQL语句的输出
问答
使用
GatewayWorker
,如何确定和查看ws连接的错误和错误信息?
#### 问题描述 使用
GatewayWorker
建立ws服务端,客户端连接经常会
进
入onerror回调,如何知道这个连接错误是客户端引起的还是服务端引起的?以及具体的错误信息是什么?
问答
GateWay框架的疑问
像我们这种分布式的框架,针对sendToUid,在某个
进
程中其实无法感知到具体的uid绑定的连接是在哪个服务节点的
进
程中的,当前的实现是应该属于广播式的把
发
送
指令广播到所有的gateway
进
程中,让他们自己判断当前的
进
程中是否存在需要被
发
送
的uid所绑定的链接,从而完成消息
发
送
,但是这样一来,如果作为一款IM的应用, 假如: 10万的用户在线量,平均每个用户每秒
发
送
一条,那么按照这样广播的
发
送
消息方式。是不是意味着不管我们gateway扩增到多少台节点上,每个gateway
进
程其实都将固定承受来自广播的 10w qps压力?
问答
gateway
进
程模型
[](http://www.workerman.net/img/GatewayWorker.png) 上图中,worker3从gateway2 收到信息,怎么会从gateway1
进
行信息转
发
?上图中,worker3从gateway2 收到信息,怎么会从gateway1
进
行信息转
发
?难道是gateway1 和 gateway2 保存的都有client1-8 的信息吗?
问答
GatewayWorker
分布式部署后,怎样连接到不同的Gateway服务器?
看了
GatewayWorker
的手册,里面写了怎样
进
行分离式部署,并举了例子,比如将Gateway和BusinessWorker部署到不同的服务器上,并有多个Gateway服务器。如果指向了某台Gateway服务器,是不是其他服务器上的Gateway就闲置了,并没有
发
挥作用? 搜了一些文档,我这样的情况,是不是应该在前端加一个负载均衡?让域名解析到该负载均衡,然后由该负载均衡将外部TCP长连接请求分
发
到不同的Gateway服务器上? 请大虾不吝赐教,非常感谢~~
问答
问两个问题 关于 视图 模型 配置文件
第
二
个问题、GatewayWorkerman框架的
数
据
库操作类、视图类它们放在哪里?怎样调用?
问答
getAllGatewayAddressesFromRegister fail. tcp://127.0.0.1:54990 return '你好呀 7f0000010b5700000003'
背景【单台服务器,启动
gatewayworker
后 workerman.log 无报错信息】 部署【服务端:
gatewayworker
在linux根目录 -> onMessage() 方法下Gatewayclient_id和设备id绑定 && 调用端:tp5.1(/www/wwwroot/m.xxx.com/machine 用了GatewayClient)】 问题【tp5.1GatewayClient向
gatewayworker
发
送
Gateway::sendToUid($uid, $data);报错信息如下】 getAllGatewayAddressesFromRegister fail. tcp://127.0.0.1:54990
问答
用
gatewayworker
给客户端做推
送
如何记录、统计 推
送
结果,并根
据
推
送
结果做重复推
送
« 上一页
1
...
125
126
127
128
129
130
131
132
...
448
下一页 »
« 上一页
128
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝