workerman
首页
问答
分享
手册
市场
物联网
webman
AI助手
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
windows下有没有重启webman的命令?
我用nssm把webman做成一个windows服
务
,想在页面做一个重启webman服
务
的按钮。但是用net命令的话只能停止服
务
,因为执行了net stop命令的话整个服
务
就终止了,无法再执行接下来net start。另外windows下貌似没有重启服
务
的命令,一般都是用ctrl+c,试了php windows.php无论后面加start还是stop/restart,
效
果都是启动webman。
问答
同一个用户登录
不
同设备,如何区分是移动端还是手机端
描述: 因为ws支持同一个用户可登录多个相同或者
不
同的设备,会
生
成多个client_id绑定的同一个uid, 绑定的时候能否有更好的方法去标识此client_id属于哪个设备来源(是使用SESSION通过Client_ID查询对应的session里存的某个来源值,这个涉及到轮询for) 方便ws服
务
器端通过用户ID查询当前用户下的client_id能清晰的知道每一个client_id所对应的设备来源值在同一个用户登录多个设备的情况下快速找到登录APP设备的client_id,或者更快的判断当前用户是或否有在APP设备登录且当前在线(
不
在线)??
问答
关于 webman 1.4,有一些疑问
之前已经上线一个webman做的API服
务
(webman版本是`v1.3.21`) 目前一切正常,稳定,高
效
,非常感谢webman 2.最近打算做一个消息中心和任
务
中心,也打算用webman来做 但最近看到论坛中有人提到 webman `v1.4` 想知道,webman`v1.4` 和 之前的版本会有什么较大变化吗?
问答
请问使用多进程时,是根据什么规则将多个连接分配给各个进程的?
事
情的背景是这样的,我想一次抓取多个网页的内容,简单的做法可以是把网址放进数组里,foreach遍历出来一个个抓取。但这样是同步的,耗时比较长,所以我想用异步多进程来实现。代码运行的结果返
回
如下: (每一行代表一个要抓取的网页,记录了执行这次抓取的task worker的id,以及抓取的用时) (最后一行是总用时) [attach]496[/attach] 这个结果是我希望得到的结果但我发现类似这种25个任
务
平均分配给5个进程的情况很少出现。经常出现有的进程执行很多次任
务
,而有的只执行1次。甚至会出现25个任
务
全都分配给1个进程的情况,这时总用时达到了6秒 ,相当于单进程的做法? 请问使用多进程时是
不
是要注意什么规则?(本人最近刚学习workman,对php的多进程也
不
太熟,希望各位前辈多指点)
文档
心跳
2、服
务
端可以通过心跳来判断客户端是否在线,如果客户端在规定时间内没有发来任何数据,就认为客户端下线。这样可以检测到客户端由于极端情况(断电、断网等)下线的
事
件。,则服
务
端认为客户端已经掉线,服
务
端关闭连接并触发onClose。## 断线重连(重要)
不
管是客户端发送心跳还是服
务
端发送心跳,连接都有断开的可能。尤其是外网环境复杂,很多路由节点会清理1分钟内
不
活跃的连接,这也是为什么心跳间隔推荐小于1分钟的原因。例如浏览器websocket需要监听onclose
事
件,当发
生
onclose时建立新的连接(为避免需崩可延建立连接)。
问答
vpn导致连接
不
上websocket
#### 问题描述 这里详细描述问题 我的云服
务
器之前websocket是能连接的,后面服
务
器装了一个v2ray的vpn,现在websocket就死活连
不
上了,但是能正常启动,postman连接ws就报
问答
webman 如何关闭默认的http服
务
#### 问题描述 目前的项目是使用webman提供`TCP服
务
`,由主项目建立TCP客户端来通过`ip+端口`的方式与webman项目通讯。 如何把webman默认的http服
务
关闭?只提供process目录下的TCP服
务
? #### 为此你搜索到了哪些方案及
不
适用的原因 尝试将config/server.php中http的count进程数改为0,发现没有作用。
分享
🧌 实战系列 | 高性能PHP框架webman协程插件入门实战
chaz6chez`的协程插件** https://www.workerman.net/plugin/167 ## 🐞 简介 > **🚀🚀 webman-coroutine 是一个 webman 开发框架
生
态下的协程基建支撑插件建议
不
要将`swoole`加入`php.ini`配置文件 3.WebmanCoroutine\Factory::$_handlers`的顺序执行`available()`择先 > 注:因为`eventLoopClass`与`HandlerClass`是一一对应的,所以建议
不
管是否存在相同的
事
件循环或者相同的处理器都需要继承后重命名## 自定义协程化 `webman-coroutine`提供了用于让自己的自定义服
务
/进程协程化的基础工具 > 注:考虑到 webman 框架默认
不
会启用注解代理,所以这里没有使用注解代理来处理协程化代理自定义服
务
> 代码样例:[CoroutineWebServer.php](src%2FCoroutineWebServer.php) 假设我们已经存在一个自定义服
务
类,如`MyServer.php
问答
请问,服
务
器端运行gatewayWoker和本地一样吗?
本地运行毫无问题,上传到服
务
器就运行
不
了,就是想问也是在服
务
端用命令行运行那三个php文件吗?我服
务
器当前的php版本是php5.2.17,但是我给网站配置的是5.6,问啥他会运行5.2呢?
问答
GatewayWorker使用两个websocket连接session丢失
SESSION = $client_id; ``` 在message里的接收第一条信息里会在成功后删除定时器,但是**$_SESSION会有时候为空,而且只在多个websocket同时连接时会发
生
,单独一个
不
会发
生
(我是同时连接两个websocket,一直刷新页面就会出现这个问题)** 因为业
务
逻辑以后还会更多个,甚至5-10个websocket服
务
器,求大佬求救啊!
问答
动态定时任
务
怎么弄呢
有个功能是用户可以自定义任
务
提醒 只需要输入提醒时间和提醒内容 到时间后给用户发提醒内容 这种多个动态定时任
务
应该怎么弄呢 如果用linux crond隔时间去跑的话 这个设置的间隔时间也
不
能定
问答
workerman.log 日志设置
不
写入
web-msg-sender 运行一段时间workerman.log 日志文件会拖垮服
务
器,怎么设置
不
写入日志?
问答
两台阿里云服
务
器部做分布式gatewayWorker,参数如何配置,有知道的么
1.主服
务
器的$gateway->registerAddress和$worker->registerAddress 的ip是
不
是当前内网ip? 2.子服
务
器的$gateway->registerAddress和$worker->registerAddress 的ip是
不
是主服
务
器的外网ip?
问答
redis-queue 队列插件能
不
能主动抛出异常?
https://www.workerman.net/plugin/12 下面是webman 官方插件的一些说明: ```css 消费失败重试 如果消费失败(发
生
了异常),则消息会放入延迟队列,等待下次重试消费过程中没有抛出异常视为消费成功,否则消费失败,进入重试队列 ``` -------------- # ## 问题 因为redis没有ack 模式, 1.能否故意把某个队列抛出为异常(目的是为了丢进重试队列) 2.又或者能
不
能主动把某条队列丢入重试队列# ## 原因 因为我的队列消费时的工作场景为:curl 携带XX参数,访问一个异步通知地址,当整个地址返
回
的内容为:success 代表消费成功,否则丢入重试队列(xx秒后重试 - 一共重试5次)
问答
请问方法调用方法,return套娃,咋
不
显示值呢?
#### 问题描述 我在控制器里,A函数调用B函数,B函数return 结果给A函数,然后A函数return json(值),显示空白,收
不
到B函数返
回
的值,请问咋整呢? ![截图](/upload/img/20230106/0663b82b754747.png) 应该返
回
:请登录后操作,如果我在【1】代码那里return一下,就做
不
到代码重复利用,基本每行代码要判断两次错误
分享
如何
不
改动 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 协议。 !
问答
可
不
可以将数据库读取的用户所有数据都保存在$_SESSION里?
上周问了一个关于global疑似失
效
的问题 http://wenda.workerman.net/?然后通信需要改变数值的时候先global &user,&bag,再比对值,比对正确就改变,
不
对则报作弊 实际情况是经常无缘无故报作弊。让我以为是再调用这个global &user,&bag的时候数据失
效
了,钻入了进程间
不
共享的情况。现在问题找到,我想用户的数据库数据只给自己用,
不
和其他玩家有互换。想到$_SESSION是和client_id对应的。但是对于用户数据特别多的情况,会
不
会引发性能的问题,因为手册里说每次通信都会携带这个$_SESSION,并且这么存保险的保险,还请大神抽空解答一下。
问答
关于房间的一个问题[已解决]
一个房间中有多个用户的时候,其中一个客户端 点击了 网页的关闭按钮 或者手机中直接 把浏览器 向上划 关闭了 导致 客户端主动关闭,这个时候 服
务
端 收到 onclose
事
件,但是此时服
务
端的 该
问答
【已解决】websocket服
务
每隔24小时掉线一次
这几天测试一台服
务
客户端是用安卓写的,链接了使用Gatewayworker框架写的websocket服
务
, 这是这台服
务
下线的时间: > 2022-01-23 09:47:27 > 2022-01-2409:47:22 > 2022-01-25 09:47:27 期间除了ping,没有任何消息推送 ping是正常的,为啥会每天断一次,如果
不
是服
务
端问题,应该就是客户端的问题了。
分享
💫 开源Linux服
务
器运维面板1Panel构建PHP容器运行webman框架
1Panel 是一个现代化、开源的 Linux 服
务
器运维管理面板。[1Panel Log]: 1Panel 服
务
启动成功![截图](/upload/img/20240303/0365e35a7a0fd9.png) > 登录后
效
果 ![截图](/upload/img/20240303/0365e35ab3c3a0.png) > 创建容器注意
事
项 * 容器名称:webman-service * 容器镜像:选择 `ghcr.io/tinywan访问服
务
> 注意:这里是使用阿里云云服
务
器,所以需要安全组开放 `8778` 端口 !
« 上一页
1
...
85
86
87
88
89
90
91
92
...
433
下一页 »
« 上一页
88
下一页 »
赞助商
+成为赞助商
×
请作者喝咖啡
×
🔝