Httperf дает предупреждение открыть дескриптор файла на ubuntu 12.04, но не в Ubuntu 10.04
Я выполнял тесты нагрузки с помощью httperf в течение нескольких недель и получал эту ошибку -
httperf: warning: open file limit > FD_SETSIZE; limiting max. # of open files to FD_SETSIZE
when I fire query from OS - Ubuntu 12.04 LTS (64 bit machine).
Но если я запускаю ту же самую команду с 32-битной машины, имеющей OS-10.04 LTS; Я не получаю сообщение об ошибке.
Кроме того, я выполнял другие сообщения, чтобы попытаться увеличить ограничение размера дескриптора файла с помощью команды "ulimit -n", а также попытался изменить с помощью
/usr/include/bits/typesizes.h
#define __FD_SETSIZE 65535
Но методы не удались.
Может кто-нибудь предложить что-нибудь?
Наблюдение:
Не нужно было вносить какие-либо изменения на 32-й машине (с Ubuntu 10.10), так какова реальная разница в Ubuntu 12.04? Кроме того, я пробовал на разных машинах (все с 64-битной архитектурой имели такую же проблему)
Ответы
Ответ 1
Это также проблема 14.04.
Чтобы решить проблему, выполните следующие действия:
- добавьте следующие строки в /etc/security/limits.conf
* hard nofile 65532
* soft nofile 65532
root hard nofile 65532
root soft nofile 65532
-
в/usr/include/x86_64-linux-gnu/bits/typesizes.h,find __FD_SETSIZE и замените его значением на 65532
-
Загрузить httperf из http://sourceforge.net/projects/httperf/
-
создать и установить из источника. Следуйте инструкциям в README, однако вам нужно установить зависимости, если вы еще этого не сделали.
sudo apt-get install libtool libssl openssl automake libevent-dev
Я изменил форматирование, но это в основном postcotso. Исходный документ