Устранение проблем Tarantool¶
Секции ниже описывают частые проблемы в работе Tarantool и способы их устранения.
Как устранить проблему вида "readahead limit reached"?¶
В файле /var/log/wallarm/tarantool.log вы можете встретить ошибки вида:
readahead limit reached, stopping input on connection fd 16, 
aka 127.0.0.1:3313, peer of 127.0.0.1:53218
Это некритичная проблема, но большое количество таких ошибок может повлиять на производительность сервиса.
Для устранения проблемы:
-  
- Пакетная версия: перейдите в папку 
/usr/share/wallarm-tarantool/init.lua→ к файлуbox.cfg. - Меганода: перейдите в папку 
/opt/wallarm/usr/local/share/wallarm-tarantool/init.lua→ к файлуbox.cfg. 
 - Пакетная версия: перейдите в папку 
 -  
Задайте параметру
readaheadодно из значений:readahead = 1*1024*1024readahead = 8*1024*1024
 
Параметр readahead определяет размер буфера опережающего считывания, связанный с клиентским соединением. Чем больше буфер, тем больше памяти потребляет активное соединение и тем больше запросов можно считать из буфера операционной системы за отдельный системный вызов. Подробное описание параметра доступно в документации Tarantool.
Как устранить проблему вида "net_msg_max limit is reached"?¶
В файле /var/log/wallarm/tarantool.log вы можете встретить ошибки вида:
2020-02-18 12:22:17.420 [26620] iproto iproto.cc:562 W> stopping input on connection fd 21, 
aka 127.0.0.1:3313, peer of 127.0.0.1:44306, net_msg_max limit is reached
Для устранения проблемы увеличьте значение параметра net_msg_max (значение по умолчанию 768):
-  
Перейдите в папку
/usr/share/wallarm-tarantool/init.lua→ к файлуbox.cfg. -  
Увеличьте значение параметра
net_msg_max, например:box.cfg { net_msg_max = 6000 } 
Чтобы не допустить перегрузки файберов, которая влияет на всю систему, параметр net_msg_max ограничивает число сообщений, которые могут обрабатывать файберы. Подробное описание параметра доступно в документации Tarantool.