ivanskins
@ivanskins
Руководитель компании Ю-ОН

В чем проблема ошибки «read error on connection» в Redis?

При сравнительно небольшой нагрузке (1000 запросов в секунду) Redis ИНОГДА выбрасывает следующее сообщение:

[09-Jun-2015 20:57:31] PHP Fatal error: Uncaught exception 'RedisException' with message 'read error on connection' in .../classes/Stash/Driver/Redis.php:272

Версия Redis: 2.6.16
В redis.conf настройка timeout = 0
В php.ini настройка default_socket_timeout = 60
  • Вопрос задан
  • 4760 просмотров
Пригласить эксперта
Ответы на вопрос 2
egor_nullptr
@egor_nullptr
Дело в том, что когда Redis занимается сохранением дампа на диск он не реагирует на внешние воздействия. Где-то в issues на github можно отыскать подробное описание. Проблема кроется в системном вызове fsync, приёме copy-on-write в OS, и волшебном сочетании этого в Redis. Выход и решение: завести slave для Redis, на котором и делать периодический дамп (опция save), а на master-е отключить save вообще.
Ответ написан
notcommon
@notcommon
У меня ларавел не хотел подключаться к редису, поднятому на digitalocean. Помогло добавление настройки в конфиг database.redis.default.scheme = 'tls'
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы