1.workerman內(nèi)部使用沒問題了,但是在php7.2.33 tp5項目外部鏈接給指定客戶或者全部客戶發(fā)送消息,會出現(xiàn)可能十次有五六次才能成功,其他就報錯"SSL handshake error: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol "
2.還有如果進(jìn)程設(shè)置為1,會出現(xiàn)不容易握手成功,開4個進(jìn)程好像無法推送了,只能內(nèi)部使用
// 建立socket連接到內(nèi)部推送端口
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
// 'allow_self_signed' => true,
// 'timeout' => 60, // 增加超時時間
]
]);
/這里使用 ssl://0.0.0.0:39200 會無法獲取id值(無法值)/
$client = stream_socket_client('tcp://0.0.0.0:39200', $errno, $errmsg, 30, STREAM_CLIENT_CONNECT,$context);
fwrite($client, json_encode($data,JSON_UNESCAPED_UNICODE)."\n");
return fread($client, 8192);
Nginx 1.24.0
Workerman version:3.5.31 PHP version:7.2.33
emmmmm 解決了,最后發(fā)現(xiàn)是接入端口問題。很難發(fā)現(xiàn)就是這個錯不是直接報錯,而是一會兒正常一會兒報錯,然后我把整個workerman都拆開檢查了....