workerman长时间未连接,无法发送消息,第二次即可正常发送,且报错think\exception\ErrorException: Packets out of order. Expected 1 received 0. Packet size=145
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK IT ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2018 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
// +----------------------------------------------------------------------
// | Workerman设置 仅对 php think worker:server 指令有效
// +----------------------------------------------------------------------
return [
// 扩展自身需要的配置
'protocol' => 'websocket', // 协议 支持 tcp udp unix http websocket text
'host' => '0.0.0.0', // 监听地址
'port' => 2345, // 监听端口
'socket' => '', // 完整监听地址
'ssl' => true,
'context' => [
'ssl' => [
'local_cert' => 'D:/phpEnv/server/nginx/conf/vhosts/cert/www.fzhelpr.com.pem', // 也可以是crt文件
'local_pk' => 'D:/phpEnv/server/nginx/conf/vhosts/cert/www.fzhelpr.com-key.pem',
'verify_peer' => false,
],
], // socket 上下文选项
'worker_class' => 'app\api\http\Worker', // 自定义Workerman服务类名 支持数组定义多个服务
// 支持workerman的所有配置参数
'name' => 'thinkphp',
'count' => 4,
'daemonize' => false,
'pidFile' => '',
// 支持事件回调
// onWorkerStart
'onWorkerStart' => function ($worker) {
},
// onWorkerReload
'onWorkerReload' => function ($worker) {
},
// onConnect
'onConnect' => function ($connection) {
},
// onMessage
'onMessage' => function ($connection, $data) {
$connection->send('receive success');
},
// onClose
'onClose' => function ($connection) {
},
// onError
'onError' => function ($connection, $code, $msg) {
echo "error [ $code ] $msg\n";
},
];
客户端长时间未访问,发送消息给服务器则返回think\exception\ErrorException: Packets out of order. Expected 1 received 0. Packet size=145,然后重连服务器再次发送即可正常
操作系统Debian GNU/Linux 11
workerman:3.5.34
thinkphp 6.0
php 8.1.13
nginx:1.22.1
定时查询下数据库,让数据库连接保持活跃,防止连接不活跃被mysql服务端断开
您好,我thinkphp开启断线重连是否也可以
你可以试下
楼主, 怎么解决的? 相同问题, 定时任务开启后, 过2天就会报错