workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
websocket服
务
如何在服
务
端加心跳功能?
我搭建了一个websocket服
务
,主要是html 5页面打开的时候会连接该websocket服
务
,我现在是pc端的浏览器打开页面然后关闭的时候,通过在服
务
端用status命令检查是没有问题的,连接数会减少,但是手机端app里面访问该html5页面,然后直接关掉app,通过服
务
端status命令显示该连接没关闭掉,都过了10多分钟还没有关掉,非常让人恼火,想请问下这种情况的话,该如何处理呢?我目前看手册里有个心跳机制,但是内容说的好像是从客户端定时向服
务
器发送点数据,然后服
务
端判断是否在间隔时间内发送了消息来判断是否要关掉,我
不
知道是否有那种在服
务
端检测连接心跳的方法,客户端没有接收到确认接受数据就把当前的连接关闭
问答
webman代码里curl很奇怪的
事
curl post访问webman某个应用内部的一个方法 情况:webman多应用 一个应用通过curl访问另外一个应用的的某个方法 这个方法
不
牵扯到数据库等访问等阻塞操作 curl post要是
不
设置超时时间,哈哈,给我怼个504 Gateway Time-out 有的时候快 有的时候超级慢 慢的时候阻塞你10几秒 找了挺久原因没找到 但是curl访问其他第三方:地图接口,百度ai接口、阿里短信接口等又
不
慢
问答
请问workerman 支持 html5 的sse吗?
我想使用使用workerman实现服
务
器端推送,请问支持html5 的server send event吗? 我发现这么写似乎无
效
,求解答? ```php <?// 创建一个Worker监听2345端口,使用http协议通讯 $http_worker = new Worker("http://0.0.0.0:2345"); // 启动4个进程对外提供服
务
$http_worker->count = 4; // 接收到浏览器发送的数据时
回
复hello world给浏览器 $http_worker->onMessage = function($connection
文档
webman是什么
通过常驻内存、协程、连接池等先进技术,Webman
不
仅突破了传统PHP的性能瓶颈,还极大地扩展了其应用场景。其余功能全部复用composer
生
态,这意味着你可以在webman里使用最熟悉的功能组件,例如在数据库方面开发者可以选择使用Laravel的[illuminate/database](.在webman里集成他们是非常容易的
事
情。 # webman具有以下特点 1、高稳定性。无需修改,可以复用现有composer
生
态。 4、高扩展性。支持自定义进程,可以做workerman能做的任何
事
情。 5、超级简单易用,学习成本极低,代码书写与传统框架没有区别。**
不
要吝啬你的小星星哦** # 第三方权威压测数据 [!
问答
关于在win环境下实现多线程的workman
看了下文档,win
不
支持workman的多线程模式,大体上看了下代码,发现实现该功能需要基于pcntl模块,而该模块在win下并
不
支持,所以导致workman在win下最多支持256个并发链接。,将一个端口的设备链接,分发到4个实现相同功能的端口,同时在workman下开启多个端口服
务
,这样
不
知道能
不
能撑起1024台设备 2.workman+cygwin cygwin提供了一个小型的unix虚拟环境,对于服
务
器资源有限,或者无法在阿里云/百度云上安装虚拟机(查了一些例子,发现在虚拟主机上运行虚拟机,
效
率很低,性能较差。自己也试了试,启动虚拟机服
务
器就死机)的同学,似乎提供了一线
生
机,但是仔细看一下就会发现,Cygwin的PHP版本好像也是win下的,其php.ini文件所提供的扩展方式似乎是dll,而非linux下的so,所以
不
知道是
不
是自己的方法有问题,还请大神赐教 3.nginx+workman+内网linux服
务
器 这个就很简单了,nginx+端口转发内网的linux服
务
,然后将workman部署与linux
问答
设备第一次登录
生
成的clientid和第二次的clientid
不
一致
#### 问题描述 设备登录后绑定对应的设备和clientid,称此时的clientid为id1,设备30分钟会发送一次登录指令,当设备再次发送登录指令时,有时候会出现clientid
不
一样的情况,称此时的触发onclose时,会更新数据库里面设备的状态,这样就会出现设备在线,但数据库里面的设备离线的情况,所以我需要在onclose里面需要判断设备是否绑定有多个clientid,如果有多个则
不
去更新数据库设备的状态
问答
我想咨询下,workerman的swoole协程,能否加速物联网modbus tcp协议的开发?
#### 问题描述 以下从官网中,拷贝的例子,做些修改,在我要sleep(1)和sleep(3)处发
生
了协程切换,使得整个过程只需要3秒就能完成一次的请求,我想问下,如果sleep函数换成发起modbustcp的请求(一种类似curl的请求,但是
不
是http协议的),会有这样的
效
果吗?connection->send(json_encode($result)); // Response: ["Task 1 Done","Task 2 Done"] ``` #### 为此你搜索到了哪些方案及
不
适用的原因搜
不
到
分享
基于webman + layui 重构的admin管理后台
| \>= 7.3 | 最低支持PHP7.3 - 8.0 | | WebMan | \>= 1.4.3 | 基于1.4.3.
不
支持- **表单构建** 基于Layui2.x开发的可视化表单设计器,可自定义表单控件,极大提高开发
效
率。- **代码
生
成** 轻松一键CURD,自动
生
成代码,自动
生
成表单,自动
生
成接口,自动
生
成菜单,自动
生
成权限。``` 3、Linux环境下启动开发服
务
``` 执行命令:php start.php start # 启动开发服
务
执行命令:php start.php stop # 停止开发服
务
执行命令:php start.php restart # 重启开发服
务
守护进程:php start.php start -d # 启动守护进程 一般为
生
产环境/修改文件后无法自动重载
问答
workerman如何主动关闭服
务
?然后继续执行Worker::runAll();后面的代码,比
不
上swoole的地方
workerman只管开启,
不
管关闭,管杀
不
管埋,结果因为业
务
需求只能无奈转向swoole。而swoole都可以自由控制: 作为http服
务
端可以:Swoole\Server->shutdown() 关闭服
务
,停止监听 作为客户端可以: Swoole\Coroutine\Client->closeuse($http) { var_dump($request); if(true)$http->shutdown(); // 接收指定请求后关闭http服
务
}); $http->start(); // swoole可以实现的继续执行后面的内容 echo 'http服
务
关闭,继续执行后面的代码……'.PHP_EOL
分享
webman+vue自定义websocket进程后端主动推送消息给客户端
Timer::add(1, function() use ($data){ // >>>>>>>>>>>>>>>>>>>>>>> // 处理代码业
务
{ websocketclose(e); }; websock.onopen = function () { websocketOpen(); }; // 连接发
生
错误的
回
调方法websock.onerror = function () { console.log("WebSocket连接发
生
错误"); //createWebSocket();啊,发现这样写会创建多个连接,加延时也
不
行 }; } // 实际调用的方法 function sendSock(agentData ) { if (websock.readyState === websock.OPEN客户端退出登录时关闭websocket 在注销登录组件中引入文件 ```javascript import { closeSock } from "@/libs/websocket"; ``` 在注销
事
件中调用关闭
问答
为什么json格式化
不
会直接抛异常?
#### 问题描述 为什么json格式化
不
会直接抛异常?#### 程序代码 $str = "asdda_周大
生
大——萨达dsasd\;lkl" $str = substr($str,0,10); return json($str) 这样会直接程序崩溃,写try catch都没用,捕捉
不
到 #### 报错信息 只有这样才会报错 return json_encode($data,JSON_UNESCAPED_UNICODE | JSON_THROW_ON_ERROR
问答
status获取
不
到信息
php artisan workman status 返
回
Workerman[artisan workman] not run 但我workerman是开着的,能正常链接 现在是运行了一段时间,socket就突然死了,又差
不
多原因 log提示SendBufferToWorker fail.
分享
workerman 运行 fpm项目 分享
此外,利用 Workerman 作为强大的无服
务
器解决方案,用于可扩展的
事
件驱动工作负载。轻量化设计,
效
率高 一个作者叫 `琼·米克尔` 老外项目 **当前兼容:** - Symfony - Laravel - CakePHP - Yii2 - Slim - KumbiaPHP -
问答
thinkphp5.1如何修改入口文件,让它在workerman4.X中运行http服
务
/thinkphp/base.php'; // 支持
事
先使用静态方法设置Request对象和Config对象 // 执行应用并响应 $app=Container::get('app')->run()
问答
使用tcp调试工具,三个客户端同时去给服
务
端发心跳,导致执行一半就执行下一条了
#### bug描述 使用tcp调试工具,同时开三个客户端同时去给服
务
端发心跳,设置的是每个客户端1秒一次,应该是发送太快服
务
端处理
不
过来,导致上一条还没执行完成就直接执行第二条心跳了,导致第一条心跳执行一半没有服
务
端还没
回
应给客户端就执行一下一条
问答
使用think-orm 模型查询数据data返
回
为空
使用think-orm 模型查询数据data返
回
为空,实际是有数据的 $lists = Order::field($field)->where($where)->order($order)->paginate
问答
急急,websocket服
务
端主动关闭连接,客户端才显示连接成功,
不
然一直连接中
#### 问题描述 用的是webman+gatewaywoker的插件,开启websocket,但是用ApiPost来测试连接,一直显示连接中,只有服
务
端主动关闭了,才显示连接上,并收到服
务
端的消息,在本地测试
不
会  这里用ApiPost连接后,服
务
端监听到,打印了内容,但是并没有建立连接,还是在连接中,然后超时,如果超时前关闭服
务
问答
大佬 workerman推送一直返
回
fail
data; // 通过workerman,向uid的页面推送数据 $ret = sendMessageByUid($uid, $buffer); // 返
回
推送结果inner_text_worker->listen(); }; // 新增加一个属性,用来保存uid到connection的映射 $worker->uidConnections = array(); // 当有客户端发来消息时执行的
回
调函数
问答
Gateway 在触发onClose的
回
调时,无法获取session的数据.[已解决]
能否在调用完onClose
回
调时候再清理session的数据呢.
问答
Netscape Enterprise Web服
务
器是啥
#### 问题描述 请问Netware下的Netscape Enterprise Web服
务
器有了解的吗?workerman里面应该
不
会使用这个吧,平台今天报出这个服
务
的漏洞CVE-2002-1634,请教
« 上一页
1
...
74
75
76
77
78
79
80
81
...
473
下一页 »
« 上一页
77
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝