workerman
首页
问答
分享
手册
市场
物联网
webman
AI助手
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
创建tcp异步连接 发送send 是
不
是统一发送?
[](/upload/img/20211216/1661badaccf9e3.jpg) 我创建tcp后 里面循环发送某些指令, 想顺便send返
回
一些进度条的信息给前段, 但是我发现是统一返
回
的
问答
请问gateway worker一般和什么前端js配合使用?
我看有个socket.io.js,
不
过那个好像封装了太多东西了,是
不
是用javascript原
生
的Websocket就可以了?
问答
Gateway::getAllClientIdList() 在服
务
异常时会报错
接口返
回
关键信息如下: { "msg": "foreach() argument must be of type array|object, bool given", "code": 500
问答
AsyncTcpConnection调用
不
到tast的workerman
$task_worker->onMessage = function($connection, $task_data) { //这下面的代码一直
不
会执行> ``` 调用代码: ```php // 与远程task服
务
建立异步链接,ip为远程task服
务
的ip,如果是本机就是127.0.0.1,如果是集群就是lvs的ip $task_connectiontask_connection, $task_result) { //这下面的代码一直调用
不
了msg) { //这里也没有报错 }; // 执行异步链接 $task_connection->connect(); ``` 代码如上,
不
知道哪里出问题了, 两个onMessage方法都一直
不
会被调用。
问答
我被多线程逼疯了,我要发一次灌水贴,我
不
管,我要发
好吧,百度一把,加锁,然后各种加锁,无
效
。。。然后各种测试,发现只开一个进程没问题,然后知道了redis原子性的概念。 哎,
不
先解决redis原子性,加一万把锁都没用,真是头发掉了无数根。
问答
AsyncTcpConnection wss 报错 Sec-WebSocket-Accept not found 已解决 并提供思路
1、
务
必按照文档要求 把wss地址改成ws 2、加入以下配置 $con->transport = 'ssl'; $con->headers = [ 'Sec-WebSocket-Accept' =>SaVNe4xTuFTkmeH2VmfT9w==', 'Accept-Encoding'=>'gzip, deflate, br, zstd' ]; 3、Sec-Websocket-Key 值也可以自己百度
生
成
问答
gatewaywoker分布式部署?
现有AB两个站 在同一个服
务
器下 把gateway woker 部署到了A上 现在B可以与A连接握手成功 消息也可以发送过去 就是b接受
不
到a推送
回
来的消息 请问该怎么处理呢?
问答
怎么获取客户端真实IP?
php var_dump( $request->getRealIp(), $request->getRemoteIp(), $request->getClientIp() ); ``` #### 都
不
正确最后用了```php $region = explode(",",$request->header('x-forwarded-for')); var_dump($region[0]); ``` 宝塔服
务
器,在线等大佬
回
复
问答
$connection->send 之后自动就返
回
了
不
能执行多次吗?
我收到一条总的数据,然后整理后发散给对应的ID ,send之后函数就终止了。怎么样执行多次
问答
[
不
懂就问]关于webman和workerman swoole的几个问题
1、转GO 2、基于常驻型的框架 3、PHP8 JIT 1、忽略了,并
不
是
不
想转型GO,而是从0开始自己玩玩之类的没问题,但公司基本都是PHP开发的,转GO后大家都没经验遇到BUG也
不
好解决,而且初识重申一遍,
不
是引战,业
务
场合是API接口开发,基本功能涉及鉴权->路由->redis->数据库。由于这里
不
是框架比较,所以详细的
不
说太多。如果觉得是1周时间学习swoole
不
够,那1天学习webman真的也
不
多。可能某些场景SWOOLE会超过webman,但我需求的场景,确实是webman高出swoole很多很多倍。如果是准备转型webman/workman,请问两者的区别是仅仅特定场合
不
一致吗?性能是差
不
多的吧? 针对PHP各版本,WEBMAN/WORKMAN是否有相关测试性能?如
生
产环境直接用 -d 启用,是否会有守护进程?
问答
微信小程序mpx框架使用weapp.socket.io连接
不
上socket.io,原
生
的可以
createConnect() { const io = require('../../utils/weapp.socket.io.js') const socket = (this.socket = io('https://***:2120')) console.log(socket) socket.on('connect', () => { console.log('连接成功') socket.emit('login', 123) }) socket.on('new_msg', (msg) => { console.log(msg) console.log(`${msg}`) }) },
文档
定制通讯协议
## 如何定制协议 实际上制定自己的协议是比较简单的
事
情。简单的协议一般包含两部分: * 区分数据边界的标识 * 数据格式定义 ## 一个例子 ### 协议定义 这里假设区分数据边界的标识为换行符"\n"(注意请求数据本身内部
不
能包含换行符),数据格式为### workerman与协议类交互流程 1、假设客户端发送一个数据包给服
务
端,服
务
端收到数据(可能是部分数据)后会立刻调用协议的```input```方法,用来检测这包的长度,```input```2、workerman框架得到这个```$length```值后判断当前数据缓冲区中是否已经接收到```$length```长度的数据,如果没有就会继续等待数据,直到缓冲区中的数据长度
不
小于```$length3、解包后workerman将数据```$data```以
回
调```onMessage($connection, $data)```的形式传递给业
务
,业
务
在onMessage里就可以使用```$data
问答
一台服
务
器部署2个gatewayworker项目,出现SendBufferToWorker fail
一台服
务
器上部署2个
不
同的项目,
不
过这2个项目都使用GatewayWorker框架,2个项目同时启动时,就出现了BusinessWorker和Gateway之间的socket链接没有建立,如果单独启动一个项目就可以
问答
webman用nginx做反向代理,首次请求特别慢
#### 问题描述 服
务
器环境处在专网内,对端口开放有严格要求,目前对外接口只开放80端口,因此选择了用nginx做反向代理,能正常提供对外接口服
务
,但是碰到一个问题,同一个访问地址,第一次请求返
回
特别慢,3-5秒,后面再访问同一地址,返
回
都是几十毫秒,比如: ?如果
不
通过nginx,直接启动服
务
监听80端口,既把nginx关闭,只使用webman,没有任何问题,所以可以确定问题是出在nginx上。#### 为此你搜索到了哪些方案及
不
适用的原因 百度了很多解决方案,没有一个跟我的一样。
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
问答
tcp长连接中调用post的并发问题
业
务
场景,设备tcp长连接发送数据上来,然后我需要调用三次第三方的api,返
回
给设备,测试大概调取三次api的时间总计在0.4-0.7秒之间,这基本上也是单线程处理一个业
务
的时间(时间基本花费在post 第三方api上,内部的逻辑操作所消耗的时间几乎可以忽略
不
计),我开起了16个bussiness进程来处理业
务
逻辑,测试全部处理500个并发大概需要10s左右的时间,但是实际的场景中,前500个并发与后500个并发中间的时间间隔大概只有3秒中,越来越多的tcp链接就会导致业
务
阻塞,CPU使用率就会到100%,然后服
务
器就炸了,求解决方案。 现在我只能想办法增加并发数量,增加服
务
器配置或者分布式,目前服
务
是双核4G内存的centos。看了下文档有异步任
务
的方式,但是异步任
务
好像只能保证服
务
不
会阻塞,没办法保证响应时间,场景要求设备必须在3秒之内收到
回
复,跪求大佬指点迷津,点拨一下即可~~~
问答
新手求助,稳定运行了22天的socket服
务
,突然连接
不
上(超时)
socket服
务
使用(gatewayWorker3.0.7), gatewatClient3.0.0 稳定运行了22天, 今天突然出现大面积连接超时的问题。
问答
用EventSource进程时出现一直无法得到响应的情况
#### 问题描述 我们有一个服
务
使用EventSource,大部分时间是正常的,偶尔会出现访问EventSource无响应,
不
输出任何数据,一直加载中。
事
实上出问题的时候,连ok2都无法输出,就是一直加载中 这是哪里的问题呢?如果是调用第三方API时出现了问题,比如超时等,会
不
会影响整体服
务
呢 #### 程序代码 ``` 伪代码 if ($request->header('accept') === 'text/event-stream
问答
关于 webman,
生
产使用
1. 常驻内存,所以相较于传统的php-fpm架构,性能,要好很多 2. 但本质上,还是属于同步阻塞模式吧,没有类似swoole中协程的东西? 3. 之所以性能相较传统php-fpm架构高,只是因为常驻内存吗? 还有其他原因吗? 4. 如果是常驻内存的,很多第三方库,可能会有大量的静态使用,用在webman里 应该会有内存问题吧? 因为对workman的认同,现在又出来一个webman 公司,新项目,我们在考虑,是否用webman 毕竟是一个新东西,有用过的,聊聊吗?
« 上一页
1
...
95
96
97
98
99
100
101
102
...
433
下一页 »
« 上一页
98
下一页 »
赞助商
+成为赞助商
×
请作者喝咖啡
×
🔝