stream_socket_client使用

用 stream_socket_client(); 来接收数据,每过来一条数据就要链接一次,因为链接数量过多而报错,导致服务器端口断开链接,请各位老大帮忙 用 stream_socket_client('tcp://ip:port'); 能连接一次,做多次的fwrite();操作吗? 
 
 
$fp = stream_socket_client("tcp://ip:port", $errno, $errstr);
if (!$fp) {
echo 'error';
} else {
fwrite($fp,$message);
fclose($fp);
myBwLog('--success--'.$str_hex_message[1]);
}
已邀请:

blogdaren - 乐于分享的PHP码农【http://www.blogdaren.com】

赞同来自:

1. 可以啊,这个需要自己定制, 比如利用定时器定期检测连接的状态,如果连接断开了就尝试重连,最好配上心跳机制。
2. 另外官方的 AsyncTcpConnection 就是这对这种场景的基于stream_socket_client的生产级实现,你可以研究下其源码。

要回复问题请先登录注册