workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
Stomp安装后没有配置文件
这是怎么
回
事
啊 #### 程序代码或配置 ``` ``` #### 重现问题的步骤 #### 操作系统环境及workerman/webman等具体版本 webman版本2.1 操作系统
问答
使用workerman的text协议,java socket 客户端如何发送和读取服
务
端数据啊?
使用workerman的text协议,java socket 客户端如何发送和读取服
务
端数据啊?和公司java后端人员对接,他们一直说没啥问题,但是就是无法收到我这边的, 估计是发送的格式问题,能否有个java socket client发送和读取服
务
端返
回
数据的示例吗?
分享
高速共享缓存插件分享
整体项目分为配置服
务
、http-api服
务
、websocket服
务
三大部分,其中配置管理主要是兼容客户端
生
成的配置数据进行导入导出转换加载,底层使用MySQL进行储存,多服
务
间使用Redis进行一级缓存后续我们的目标锁定在了共享内存上,因为共享内存可以轻易的在进程间进行通讯交换,而且
不
存在深拷贝和网络等问题,
效
率、性能非常的高,整体微秒级别的响应满足我们的需求;于是我基于PHP的拓展APCu封装了适合我们业
务
场景的插件包进行使用# webman-shared-cache 我们的基础应用实现了定时器来从MySQL数据库读取配置信息,定时器的处理器也在读取数据刷入Redis的同时触发共享内存的更新
事
件,上层业
务
通过更新
事
件的
回
调出发会将的操作,为了业
务
的原子性,我们希望这多次的操作要在一个原子性内完成,所以需要一个锁来进行隔离,以免在多进程的环境下被其他进程的操作污染,整体是类似MySQl的
事
务
的: ```php protected- 默认储存空间和子通道储存空间是互斥的,也就是说当存在子通道储存空间时,是
不
存在--default--的,反之亦然;子通道储存空间是当当前通道存在监听器时
生
成的,而在监听器产
生
前,消息会暂存在--default
问答
请教一个socket长连接相关的问题
walkor大神,请教一个socket相关的问题 现在情况是这样的,我要写一个将MySQL数据同步到ES的服
务
,方案是将MySQL binlog日志解析成结构化的数据,然后写入ES,解析binlog的是一个php cli 单进程,死循环获取binlog数据,因为怕数据太多,消费能力跟
不
上,想着用workerman多个worker进程处理,但是多个worker进程存在的问题是有序性问题,同一张表的
事
件只能同时由一个worker进程处理,我目前的想法是缓存了几个缓存了几个socket链接,然后根据表名去走对应的socket链接发送消息,
不
确定这样子稳
不
稳定。// 启动4个进程对外提供服
务
$worker->count = 6; $worker->name = 'write_es'; Worker::$logFile = __DIR__ . '/' .读取推送结果 echo fread($client, 8192); } function getTableFromEvent($event) { //逻辑没实现,大概就是
不
同的增删改查返
回
不
同的表名
问答
openssl_get_publickey解析公钥报错【解决】
#### 问题描述 这两天遇到个奇怪问题,对接支付的
回
调时要验签,解析公钥准备验签时一直报error:0909006C:PEM routines:get_name:no start line,我是windows开发环境用的phpstudy-8.0,openssl版本1.1.1i,以后是我环境问题,后来又去liunx服
务
器上试了下也是同样错误,服
务
器是宝塔Php-7.4,openssl版本1.0.2u,然后我又在我开始怀疑是因为我直接复制的公钥赋值在变量中因为格式原因报的错,然后用命令
生
成了公钥文件file_get_content来调用公钥,然而还是报错。2天了我怎么都想
不
通哪有问题,如果宝塔有问题装机量这么大
不
会没有人提出,但是用命令行又能解析 -------------------------- 散了吧,支付平台示例
不
完整和客服讨论了半天解决了,也
不
是
问答
Thinkphp 5 +workerman 付费求远程协助调试一个demo。
顺便说一下问题,下图是我的服
务
端推送代码,现在的问题是 ,这段代码只能推送给前端的send
事
件触发人,
不
能推送给全部成员。
问答
服
务
端给前端发消息,前端没有接受到数据
使用PHPsocket.io,服
务
器走到$io->to->emit(),继续往下走了,前端没有接受到数据,连接也成功101也成功。而且有时会有,有时没有。to分组是成功的。两个页面同时链接,只有一个页面会有数据返
回
。大神救救孩子吧,快疯掉了
分享
Forum 论坛项目 极致【性能优化】总结分享
这歌个场景是空间换时间和时间换空间的相互配合的结果, 首先是开启Gzip后,返
回
的前端资源会减少80%以上的大小。这很利于利用有
效
的带宽在未来为更多的人提供服
务
其次是[GooseForum](https://gooseforum.online)本身的前端资源是通过golang embed 嵌入到项目之中的,所以把所有文件Gzip后存到内存中数量也是非常有限的,所以
不
用担心oom(内存泄露)的发
生
,并且Gzip本身还是会消耗
不
少的cpu甚至大于许多接口页面本身的逻辑,所以这里是非常值得这样优化的。- 2 项目中每个作者的热点文章也是
不
同的,这里采用类似 user 缓存的策略,但是这里
不
会去主动reload最新数据,因为这里的实
效
性是低于user的(毕竟用户更新了数据,但是发现右上角头像没变会让人当成,
不
会立刻写入,同时还有一个附加逻辑,就是如果这个异步任
务
创建了已经超过了45s但是还没有写入,就会强行写入,否则判断活跃时间是否超过15s 即可,这样会极大减少用户写入的频率。
问答
THINKPHP相关的咨询
我是半路出家自学it,用的thinkphp,服
务
器上有10多个thinkphp的站点,用的wdcp管理。。。。 我其中一个站点A启动了workerman相关的服
务
,是
不
是对所有的站点都有
效
????如果是的话:站点B与站点A的用户CLINTID绑定的UID以及群组GroupID是
不
是要设置成
不
一样????
不
然会
不
是出现A站点发信息到B站点去了(如sendToAll)???
问答
如何使用web端向TCP服
务
器发送消息?
目前有一个需求是建立一个TCP客户端,与远端的TCP服
务
端交互。为了方便使用,需要web端发送信息,然后后端将信息发送给TCP服
务
端,并与之交互,交互结果发送给web端 初步的想法是, 1.建立websocket服
务
端,与前端进行交互 2.websocket服
务
端接受到前端发送的数据后,在发送给TCP服
务
端 3.TCP服
务
端返
回
的数据,经过处理,再通过websocket推送给前端 代码如下 ```php use Workerman\Worker; require_once __DIRAsyncTcpConnection('tcp://127.0.0.1:8050'); $conn->onMessage = function($conn, $data) { //这里与tcp服
务
器交互); }; $worker->onMessage = function ($connection, $data) { //此处接受网站发送过来的websocket //如何在此处向子进程的tcp服
务
器发送消息
问答
webmancrontab定时任
务
堆积问题
#### 问题描述 我举例个场景,我起了一个5秒一次请求的定时任
务
,任
务
中5秒后业
务
代码还没执行完,这时候会
不
会出现没有执行完,就启动下次任
务
,这样子久而久之造成堆积呢?#### 为此你搜索到了哪些方案及
不
适用的原因 我自己的见解就是,在一次任
务
中,使用请求库中的并发请求来调用接口通知
问答
关于服
务
器配置SSL的问题(站点与Socket各一台服
务
器)
站点放在腾讯云,Socket服
务
放在机房,连接时需要使用域名,请问Socket服
务
应该怎么部署SSL。 Socket服
务
器
不
论如何配置,站点都无法连接成功。
问答
客户端使用socket_write()定时发送心跳以后,就
不
能使用socket_recv()接收workerman主动发送的数据
客户端使用socket_write()定时发送心跳以后,就
不
能使用socket_recv()接收workerman主动发送的数据: 我是使用客户端主动发送数据给workerman的服
务
器端,下面是代码\n"; connect(); } sleep(15); }while(TRUE); ``` 这个只能客户端发送数据,服
务
端
回
复一条数据,当服
务
端主动发送一条数据的时候就无法通过
问答
关于WEB消息推送框架,用户下线,发送消息,http返
回
的仍然是ok
给用户发送消息,我在发送消息之前,让用户断开socket连接(用户下线),然后使用WEB消息推送框架给下线用户发送消息,但是其中return $http_connection->send('ok');这个地方返
回
的仍然是ok,
不
应该是fail?
问答
【已解决】webman多域名绑定多应用的伪静态如何做?
return [ 'enable' => true, // 多应用绑定关系 'bind' => [ 'admin.abc.com' => 'admin', //
不
属于任何应用'www.abc.com' => 'cn', // 绑定到admin应用 ], // 绑定关系,域名,应用的验证逻辑,返
回
true时认为符合绑定关系,反之
不
符合返
回
404 'check' => function ($bind, $domain, $app) { // 域名存在大写时 检测会失
效
$bind =
问答
压力测试GatewayWorker的并发连接结束后,其中一个gateway进程cpu一直长期100%
#### 问题描述
生
产环境是2台16核32G的配置,按照手册分布式部署,配置gateway进程16个,和worker进程数100个, 使用压力测试系统并发2000个链接,只链接,
不
发送业
务
处理。在压力测试下,gateway进程cpu个别跑满,其他的也大都在70%,压力测试关掉后很长一段时间,有一个gateway进程cpu始终100%,其他gateway进程cpu基本
回
落到0,该状态下,业
务
系统可以正常链接上我们之所以做这个压力测试,是为了复现我们业
务
异常并发下,也同样导致了gateway的某个进程cpu跑满,而其他进程都很空闲,
不
知道是什么原因,而业
务
系统处于无法收发的状态下。gateway框架也没有任何异常报错,服
务
器整体cpu还低于20%。
问答
短连接给用户推消息方案
#### 问题描述 用户请求接口开启推送任
务
,服
务
端收到后
回
调用户地址推送消息(
不
用长连接) 用户请求接口停止推送任
务
,服
务
端收到后停止
回
调用户地址 用户有几十上百,是用定时器还是其他方法呢?如果用定时器停止时如果和定时器
不
在同个进程只凭定时器ID能否删除定时器? #### 为此你搜索到了哪些方案及
不
适用的原因 暂无
问答
webman文件上传获取
不
到文件大小
://www.workerman.net/doc/workerman/http/request.html#获取上传文件] ### 获取上传文件 $files = $request->file(); 返
回
的文件格式类似> 1196127, 'error' => 0, 'type' => 'application/octet-stream', ) ) 可以返
回
这个信息,我主要想用的是size 因为
不
同时候,上传大小限制的maxsize
不
同,需要在这里做判断 但是在 webman 里使用file(),得
不
到size webman关于这块的文档里也没有。
问答
windows下
不
能把echo日志记录到文件里吗
windows 启动已经加上 -d 但是所有的echo还是在终端上输出 是因为-d 在windows上没有
效
果吗
问答
小蝌蚪聊天室修改
不
了名称,而且一会儿出现与服
务
器断开连接了
不
管按什么键都
不
能弹出修改名称的框 而且我
不
移动鼠标一会儿就出现 与服
务
器断开连接了,您可以重新刷新页面。 我用几个浏览器打开,周围也
不
会出现新的小蝌蚪 求指教
« 上一页
1
...
70
71
72
73
74
75
76
77
...
465
下一页 »
« 上一页
73
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝