workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
webman-admin 下拉菜单如果设置必填项会报错,必填
不
能为空,附解决方法
使用webman-admin当一键
生
成菜单时,设置了必填项,即使选择选项也会报错 必填
不
能为空 解决方法: 去掉下拉菜单的 required lay-verify="required" 在js里面 `
分享
如何
不
改动 GatewayWorker 依赖包下自定义协议
而自定义的协议,也就是 gateway 面向客户端提供服
务
的协议,下面就简单收一下 GatewayWorker 启动后连接的过程吧。 !Gateway 进程将开启的 GatewayProtocol 服
务
地址发给 Register。 6.BusinessWorker 则将连接
事
件交给 Event 业
务
处理。 10. Event 处理后又发给 Gateway,Gateway 再发给客户端。 !而为了
不
破环 vendor 包,自定义的协议最好写在 TP 框架的应用层。 [截图](/upload/img/20240826/2666cbeca887ba.png) 打开 config 的 gateway_worker.php,以下先
不
做处理的写好 game 协议。 !
问答
启动workerman服
务
后,原来的apache服
务
重启才能使用
启动workerman服
务
后,原来的apache服
务
重启才能使用,停止workerman服
务
后,原来的apache服
务
也是需要重启才能使用;这是为什么?
分享
💫 开源Linux服
务
器运维面板1Panel构建PHP容器运行webman框架
1Panel 是一个现代化、开源的 Linux 服
务
器运维管理面板。[1Panel Log]: 1Panel 服
务
启动成功 > 登录后
效
果  > 创建容器注意
事
项 * 容器名称:webman-service * 容器镜像:选择 `ghcr.io/tinywan访问服
务
> 注意:这里是使用阿里云云服
务
器,所以需要安全组开放 `8778` 端口 !
问答
同一个用户登录
不
同设备,如何区分是移动端还是手机端
描述: 因为ws支持同一个用户可登录多个相同或者
不
同的设备,会
生
成多个client_id绑定的同一个uid, 绑定的时候能否有更好的方法去标识此client_id属于哪个设备来源(是使用SESSION通过Client_ID查询对应的session里存的某个来源值,这个涉及到轮询for) 方便ws服
务
器端通过用户ID查询当前用户下的client_id能清晰的知道每一个client_id所对应的设备来源值在同一个用户登录多个设备的情况下快速找到登录APP设备的client_id,或者更快的判断当前用户是或否有在APP设备登录且当前在线(
不
在线)??
问答
游戏开发中,分布式部署,开启多个业
务
进程,怎么确保一个房间的玩家在同一个服
务
器的同个业
务
进程呢?
#### 问题描述 一个游戏服
务
,开了多个 businessworker 后,
不
能保证同一个房间的人都在一个 businessworker 的进程内存中。以及分布式部署后,没法保证同一个房间的人进入同一个服
务
器的同一个 businessworker。同一个房间的游戏玩家如果没有进入同一个 BusinuessWorker,操作内存数据的时候,会读取
不
到其他玩家的相关游戏状态信心。 这里大家说怎么处理的呢?
问答
文件上传小雨
public function dealInput($buffer) 如果传输文件
不
通过pack 怎么
效
验文件是否上传完成?
问答
付费帮写一个服
务
端和安卓通信
需求很简单,后台用phpsocket.io搭建服
务
器,写个服
务
端,安卓
不
用写,但是要能测试通过。就是能和安卓客户端通信,随便发个消息,安卓能收到就行。公司安卓用的j
文档
globalEvent
globalEvent ## 说明: ```php static Event Worker::$globalEvent ``` 此属性为全局静态属性,为全局的eventloop实例,可以向其注册文件描述符的读写
事
件或者信号
事
件命令行运行 ``` kill -SIGALRM 进程pid ``` 服
务
端会打印出 ``` Get signal SIGALRM ```
问答
推送有时成功有时失败
20200618/185eeb272a4322.png) 前端通过websocket连接到workerman,后端通过这个push.php文件传入前端的参数uid进行推送,有时候成功,有时候失败,怎么
回
事
呢
问答
推送有时成功有时失败
uid=uid3 有时候成功,有时候失败,怎么
回
事
啊?
问答
redis-queue 队列插件能
不
能主动抛出异常?
https://www.workerman.net/plugin/12 下面是webman 官方插件的一些说明: ```css 消费失败重试 如果消费失败(发
生
了异常),则消息会放入延迟队列,等待下次重试消费过程中没有抛出异常视为消费成功,否则消费失败,进入重试队列 ``` -------------- # ## 问题 因为redis没有ack 模式, 1.能否故意把某个队列抛出为异常(目的是为了丢进重试队列) 2.又或者能
不
能主动把某条队列丢入重试队列# ## 原因 因为我的队列消费时的工作场景为:curl 携带XX参数,访问一个异步通知地址,当整个地址返
回
的内容为:success 代表消费成功,否则丢入重试队列(xx秒后重试 - 一共重试5次)
问答
Gateway的分流是对连接分配进行分流还是对协议定义的数据包进行分流?
#### 问题描述 Gateway-Worker同一个连接的数据是否会固定发给一个BusinessWorker服
务
器下的固定的一个线程处理?C1发送ABCD,G1将ABCD发给B1,B1返
回
1234给G1,G1返
回
1234给C1。 C2发送ABCD,G1将ABCD发给B1,B1返
回
1234给G1,G1返
回
1234给C2。我的问题是,后续当C1再次发送ABCD或其他数据的时候,只要
不
重连,是否永远只会发给B1来处理,
不
会发给B2? 换句话说,Gateway的分流是对连接分配进行分流还是对协议定义的数据包进行分流?根据其他问题的
回
答,Gateway似乎是对连接进行分流,后续的数据都只会抵达特定的BusinessWorker。
不
过我想确认一下。
问答
webman 如何关闭默认的http服
务
#### 问题描述 目前的项目是使用webman提供`TCP服
务
`,由主项目建立TCP客户端来通过`ip+端口`的方式与webman项目通讯。 如何把webman默认的http服
务
关闭?只提供process目录下的TCP服
务
? #### 为此你搜索到了哪些方案及
不
适用的原因 尝试将config/server.php中http的count进程数改为0,发现没有作用。
问答
tcp测试工具连接服
务
器无法收发数据
我用TCP调试助手(window软件)连接到服
务
器的TCP端口后接收
不
到心跳,向服
务
器发送字符串,服
务
器也没有反应。用此软件连接text端口,却可以接收到心跳,按照text协议发送字符串,服
务
器也可以响应。 这是为什么? 我该怎样使用tcp协议呢?
问答
自定义协议input()接收报文返
回
给decode时 return卡住
#### bug描述 自定义协议在input方法里面接收客户端传入报文,随后return给 decode()方法时卡住了,要过几分钟才往下执行业
务
代码,有谁知道是什么原因导致嘛 #### 程序代码或配置recv_buffer, "0752"); if ($pos === false) { return 0; } // 在这里程序会卡住
不
往下执行[截图](/upload/img/20230105/0563b6aca9ded0.png) 接收到报文后
不
往下执行decode()方法,求解
问答
动态定时任
务
怎么弄呢
有个功能是用户可以自定义任
务
提醒 只需要输入提醒时间和提醒内容 到时间后给用户发提醒内容 这种多个动态定时任
务
应该怎么弄呢 如果用linux crond隔时间去跑的话 这个设置的间隔时间也
不
能定
问答
GatewayWorker使用两个websocket连接session丢失
SESSION = $client_id; ``` 在message里的接收第一条信息里会在成功后删除定时器,但是**$_SESSION会有时候为空,而且只在多个websocket同时连接时会发
生
,单独一个
不
会发
生
(我是同时连接两个websocket,一直刷新页面就会出现这个问题)** 因为业
务
逻辑以后还会更多个,甚至5-10个websocket服
务
器,求大佬求救啊!
问答
今天学习Gatewayworker,遇到问题,请各位前辈帮忙看看,谢谢!
浏览器连接服
务
,onConect可以正常返
回
数据,客户端可以接收 2. 客户端向Gatewayworker服
务
端发送消息,服
务
端onMessage没有执行 3.客户端关闭页面,服
务
端onClose也
不
执行 客户端代码  服
务
端代码 !
问答
workman进程中是单线程么
rt,workman 进程是单线程么,就是轮询和执行
回
调, 是会冲突么?如果我只启动一个进程的话, 是
不
是无论timer 还是 onmessage 中的
回
调, 都是按顺序一个一个执行的,处理数据都
不
需要加锁?谢谢~~~以前用c++, 刚开始接触php开发游戏服
务
器, 考虑的互斥有些多
« 上一页
1
...
89
90
91
92
93
94
95
96
...
460
下一页 »
« 上一页
92
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝