나는 Redis와 함께 작동하는 PHP에서 백엔드를 가지고있다.PHP와 Redis 간의 높은 트래픽 연결
그러나 요청이 증가하고는 초당 2000 개 이상의 요청이 나는 오류가 나타나면 TIME_WAIT에
99 - Cannot assign requested address
모든 소켓을.
연결 예 :
$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 인/그물 /의 IPv4/tcp_tw_recycle을가 I가 1 돈에 설정할 수 없습니다 응용 프로그램과 redis 사이의 네트워크에서 손실 패킷을 원하지 않습니다.
PHP의 새 요청시 PHP가 새 소켓을 만듭니다.
아이디어가 있으십니까?
동일한 소켓을 사용하여 여러 요청을 보낼 수 있습니까? –
동일한 소켓을 사용하여 여러 요청을 보내려면 어떻게해야합니까? –
http://redis.io/topics/pipelining –