考虑会不会因为没加心跳,管道挂起问题,但是有时候第一次就可以接收到,前段做了个重复bind,每30s一次,这样会不会充当心跳!
Events.php:用户连接进来开启一个定时器, 业务方面
线下是wa环境 线上是ln环境 控制台没有报错
你们这不是乱写嘛,每个客户端都在连接的时候在内存里加一个定时器,然后又不删除。跑着跑着内存就因为无限添加定时器爆了,cpu也会呼呼的转
业务需求是用户设置延迟提醒某个内容,进程定时器获取不到用户token,所以放在用户链接的时候,业务规模比较小,集团oa大概百人左右
需要一直提醒吗
看下workerman.log日志 tp/runtime下的日志
今天部署发生的 只有启动、重启、停止记录,runtime下无错误记录
一次性定时器没问题,如果是持久定时会内存泄漏,需要在合适的时候将定时器删除。 最好不要用tp来运行gatewayWorker workerman,运行命令行运行的时候tp可能会提前连数据库,导致子进程继承同一个数据库连接,使用数据库的时候失败。
我在onWorkerStart 进行mysql初始化 TP里用了sendToUid 所以不会是内存泄露影响消息问题吧,消息时有时无 第一次发送没有响应,之后正常,
你们这不是乱写嘛,每个客户端都在连接的时候在内存里加一个定时器,然后又不删除。跑着跑着内存就因为无限添加定时器爆了,cpu也会呼呼的转
业务需求是用户设置延迟提醒某个内容,进程定时器获取不到用户token,所以放在用户链接的时候,业务规模比较小,集团oa大概百人左右
需要一直提醒吗
看下workerman.log日志 tp/runtime下的日志
今天部署发生的 只有启动、重启、停止记录,runtime下无错误记录
一次性定时器没问题,如果是持久定时会内存泄漏,需要在合适的时候将定时器删除。
最好不要用tp来运行gatewayWorker workerman,运行命令行运行的时候tp可能会提前连数据库,导致子进程继承同一个数据库连接,使用数据库的时候失败。
我在onWorkerStart 进行mysql初始化 TP里用了sendToUid 所以不会是内存泄露影响消息问题吧,消息时有时无 第一次发送没有响应,之后正常,