我有 php 的后端,它适用于 Redis。
但是当请求增加并且每秒超过 2000 个请求时,我收到一个错误:
99 - Cannot assign requested address
TIME_WAIT 中的所有套接字。
连接示例:
$this->_socket = @stream_socket_client(
'tcp://' . $this->hostname . ':' . $this->port,
$errorNumber,
$errorDescription,
ini_get('default_socket_timeout'),
STREAM_CLIENT_CONNECT | STREAM_CLIENT_PERSISTENT
);
我找到解决方案:http ://redis4you.com/articles.php?id=012&name=redis
但是/proc/sys/net/ipv4/tcp_tw_recycle 我不能在1中设置。不想在application和redis之间的网络上丢包。
来自 API 的新请求的 PHP 创建一个新的套接字。
有任何想法吗?