Недавно я проверил один из наших процессов redis к тому, что ulimits, где применяется, используя:
cat /proc/<redis-pid>/limits
И был удивлен, узнав, что это было при низком значении по умолчанию:
Limit Soft Limit Hard Limit
Max open files 4016 4016
Я был удивлен, потому что у нас настроено следующее:
# /etc/sysctl.conf
fs.file-max = 100000
,
# /etc/security/limits.conf
* soft nofile 100000
* hard nofile 100000
,
# /etc/ssh/sshd_config
UsePAM yes
,
# /etc/pam.d/sshd
session required pam_limits.so
Может кто-нибудь сказать мне, почему увеличенный ulimit не применяется к запущенному процессу redis?
Процесс redis выполняется как пользователь 'redis', сервер был перезагружен, так как ограничения были увеличены. Мы на Debian Squeeze.