View previous topic :: View next topic |
Author |
Message |
MaratK n00b
Joined: 02 Oct 2005 Posts: 4
|
Posted: Sun Oct 02, 2005 11:10 pm Post subject: В чем разница между OPEN_MAX, NR_OPEN и __F |
|
|
собсн. сабж
Last edited by MaratK on Mon Oct 03, 2005 5:04 pm; edited 1 time in total |
|
Back to top |
|
|
hlroad Tux's lil' helper
Joined: 28 Sep 2004 Posts: 105
|
Posted: Mon Oct 03, 2005 1:53 am Post subject: Re: б ВЕЛ ПЮГМХЖЮ ЛЕФДС OPEN_MAX, NR_OPEN Х |
|
|
OPEN_MAX - максимальное количество одновременно открываемых файлов (POSIX)
NR_OPEN - максимальное количество одновременно открываемых файлов (linux)
FD_SETSIZE - максимальное количество файлов, обслуживаемых select'ом
А теперь... та-да: всё это имеет чуть большее отношение к количеству одновременно открываемых файлов, чем цены на папайю в гонолулу. Для выяснения истинного числа нужно использовать getrlimit/setrlimit (RLIMIT_NOFILE). Для работы с сетью используйте epoll(4) и забудьте про все эти макросы как про страшный сон.
P.S. Заметим, что если даже вам разрешено открывать всего лишь 256 файлов (как большинству пользовательских процессов разрешено) вы вполне можете получить, скажем, открытый файл нумбер 497523 - ну просто у вызывающей программы был такой предел в какой-то момент и ей этот файл открыть разрешили, а вам он достался по наследству |
|
Back to top |
|
|
MaratK n00b
Joined: 02 Oct 2005 Posts: 4
|
Posted: Mon Oct 03, 2005 5:09 pm Post subject: |
|
|
Но, например, если нужно, чтобы апач обслуживал более двух тысяч запросов одновременно, то нужно отредактировать эти макросы (выставить, напр., 2048),
и перекомпилить ядро? |
|
Back to top |
|
|
hlroad Tux's lil' helper
Joined: 28 Sep 2004 Posts: 105
|
Posted: Mon Oct 03, 2005 5:39 pm Post subject: |
|
|
MaratK wrote: | Но, например, если нужно, чтобы апач обслуживал более двух тысяч запросов одновременно, то нужно отредактировать эти макросы (выставить, напр., 2048), и перекомпилить ядро? |
Вот уж чего делать не надо - так это перекомпилировать ядро и менять макросы! Нужно увеличить максимальное количество открываемых файлов (help ulimit), проверить что в системе общее число открываемых файлов приемлемо (/proc/sys/fs/file-max), указать MaxClients (и не забыть про ServerLimit). Всё, вроде как. Но перекомпилировать ничего не нужно - это точно.
P.S. Речь, разумеется, идет про Apache 2.0.54+, linux kernel 2.6.10+ и glibc 2.3+ .... |
|
Back to top |
|
|
MaratK n00b
Joined: 02 Oct 2005 Posts: 4
|
Posted: Mon Oct 03, 2005 6:41 pm Post subject: |
|
|
Ясно. Спасибо. А вот вопрос, кстати, насчет ServerLimit. Я где-то прочел, что чтобы повысить кол-во обрабатываемых запросов,
нужно изменить HARD_SERVER_LIMIT на более высокое значение (у меня потоковый модуль prefork и апач версии 2.0.54) и перекомпилить апач.
Это так? |
|
Back to top |
|
|
hlroad Tux's lil' helper
Joined: 28 Sep 2004 Posts: 105
|
Posted: Wed Oct 05, 2005 10:16 am Post subject: |
|
|
MaratK wrote: | Ясно. Спасибо. А вот вопрос, кстати, насчет ServerLimit. Я где-то прочел, что чтобы повысить кол-во обрабатываемых запросов,
нужно изменить HARD_SERVER_LIMIT на более высокое значение (у меня потоковый модуль prefork и апач версии 2.0.54) и перекомпилить апач.
Это так? |
Черт побери - где вы всю эту доисторическую информацию выкапываете ? Ну да - был такой HARD_SERVER_LIMIT в старых версиях Apache. Это было давно и неправда.
P.S. Хотя если возникает вопрос об увеличении этих пределов, то стоит посмотреть на что-то другое для раздачи статики, оставив Apache'у только скрипты - скажем nginx. |
|
Back to top |
|
|
MaratK n00b
Joined: 02 Oct 2005 Posts: 4
|
Posted: Wed Oct 05, 2005 3:02 pm Post subject: |
|
|
Спасибо за инфу. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|