У меня есть бэкэнд на 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. Не хочу терять пакеты в сети между приложением и Redis.
Php по новому запросу от API создает новый сокет.
Любые идеи?
ulimit -a
на вашем сервере? Я предполагаю, что вы используете какой-то Linux / Unix, верно? - person N.B.   schedule 20.06.2016