if ($request_method = POST ) — не нужно, пост не кешируется автоматически.
Не нужно использовать старый nginx, лучше использовать новый nginx. Он лучше, в нем меньше багов и больше функционала.
Конфиги заключайте в <рrе> < соdе >, меня это спасало.
<зануда> В конфиге куча повторяющихся мест. proxy_add_header лучше вынести на уровень server или вынести вместе с proxy_pass в отдельный файл, подключаемый через include. Получается намного удобнее, честно :) </зануда>
if ($request_method = POST ) — не нужно, пост не кешируется автоматически.
Не нужно использовать старый nginx, лучше использовать новый nginx. Он лучше, в нем меньше багов и больше функционала.
Конфиги заключайте в
< code >, меня это спасало.
<зануда> В конфиге куча повторяющихся мест. proxy_add_header лучше вынести на уровень server или вынести вместе с proxy_pass в отдельный файл, подключаемый через include. Получается намного удобнее, честно :) </зануда>
>Но оказывается, что сделать сортировку со сложностью O(n) в общем случае просто не возможно
Немного не согласен. Это не возможно лишь при сортировке сравнением, но весьма возможно при поразрядной или сортировке подсчетом.
Увы, в терминах debian я не умепю оперировать :) 0.8 — текущая версия, 0.7 — старая версия. 0.7 не развивается, в нее только раз в N времени бекпортятся исправления багов, найденных во время разработки 0.8. Если Вы найдете в 0.7 баг, то его исправят в 0.8 :)
Я использую последнюю ветку все время, таких уж страшных проблем, как при использовании бета-ПО, никогда не имел.
Мне кажется, что в программе, которая только и делает, что работает со строками, будет столько возросшее количество занимаемой памяти. Я почти полностью уверен, что дело в переходе с ubuntu на debian. Отключите ненужные модули, почитайте man о mpm и сделайте новый, улучшенный замер.
ЗЫ. А вообще, если так дорога память — переходите на nginx+php-fpm. 150 воркеров в 2гб памяти помещаются спокойно. RES eу каждого — 10-20mb на 64битной машине,
<рrе> </рrе>
Когда вернусь с отдыха, попробую воспроизвести на последней версии.
Исправление: корректная обработка метода HEAD при кэшировании.
sysoev.ru/nginx/changes.html — 0.7.48,
Исправление: теперь nginx кэширует только ответы на запросы GET.
К слову, в дальнейших версиях очень многое по кешированию было исправлено.
Правильно — так:
if ($request_method = POST ) — не нужно, пост не кешируется автоматически.
Не нужно использовать старый nginx, лучше использовать новый nginx. Он лучше, в нем меньше багов и больше функционала.
Конфиги заключайте в <рrе> < соdе >, меня это спасало.
<зануда> В конфиге куча повторяющихся мест. proxy_add_header лучше вынести на уровень server или вынести вместе с proxy_pass в отдельный файл, подключаемый через include. Получается намного удобнее, честно :) </зануда>
Не нужно использовать старый nginx, лучше использовать новый nginx. Он лучше, в нем меньше багов и больше функционала.
Конфиги заключайте в
Немного не согласен. Это не возможно лишь при сортировке сравнением, но весьма возможно при поразрядной или сортировке подсчетом.
А еще есть наивный алгоритм за O(n*n!) :-)
Я использую последнюю ветку все время, таких уж страшных проблем, как при использовании бета-ПО, никогда не имел.
Есть вариант переделать скрипт, чтобы он принимал не то, что после subdir, а весь путь, и написать тогда вот так:
Есть ли «история успеха», подтверждающая эти идеи? Описание каких-то подводных камней?
ЗЫ. А вообще, если так дорога память — переходите на nginx+php-fpm. 150 воркеров в 2гб памяти помещаются спокойно. RES eу каждого — 10-20mb на 64битной машине,
Насколько я понимаю, как-то так.
proxy_cache_use_stale http_502 http_503 http_504;
proxy_cache_valid 0;
.
Еще можно сделать вложенными location, намного красивее: