Boris A Dolgov

Boris A Dolgov
Рейтинг
215
Регистрация
04.07.2007
myhand:
Почему "искуственно ведет"? Не настроим - не приведет что-ли? Backlog переполнится еще быстрее, если мы не будем быстро принимать запрос к обработке и решать отпинать-ли его с 503 какой-нибудь или обработать нормально.

Читайте внимательнее -- "leacky bucket" как раз придерживает соединение в некоторой очереди, пока не будут обработаны другие соединения для этого сайта. К этому же ведёт ограничение на процент процессора -- вместо того, чтобы бросить все ресурсы сервера на обработку, соединения одного пользователя будут копиться, лишая других пользователей других ресурсов (например, память, io (так как, возможно, чем дольше будет выполняться процесс, тем чаще его данные будут вымещаться из дискового кеша, тем чаще ему придётся лезть за ними на диск)).

Ну, эт маркетинг.

Маркетинг-не маркетинг, а почти все пользователи CL, которых я знаю, пользуются им из-за этого.

Почему? Я так понимаю, трудность в другом - найти кому дать следующий реквест обработать.

Т.е. перекидывать запросы между процессами апача?

Raistlin:
на всех трех должно проверяться. Есть соответствующие возможности у маршрутизаторов и соответствующие рекомендации, даже rfc какой-то есть. Можно загуглить, на этом форуме обсуждалось.

Каким образом 2 и 3 могут точно это проверить?

myhand:
А ничего, что там чуть больше чем "лимитировать количество воркеров" для виртуального хоста?

Это не имеет смысла -- создание одного узкого места искуственно ведёт к проблемам в других местах. Например, если мы настроим для виртхоста обработку запросов через leacky bucket, то у нас может переполниться backlog. То же самое и с другими ресурсами.

Поэтому сейчас они исследуют новую возможность -- выставлять большие лимиты и запускать специальный демон, который будет следить за потреблением ресурсов и применять санкции к пользователям, которые потребляют слишком много. Напоминает парсинг bsd accounting, да? :)

И может я чего-то не понял, но весь пук этого cloud (ну почему не нано, ы?) - делается обычными cgroups. Не знаю, насколько хуже чем сделали они с openvz, зато cgroups есть в ядре. Есть и модуль апача mod_cgroups для шаред-хостинга.

Нано актуально только в России, а cloud -- везде.

На самом деле весь пук заключается в том, что это готовое, поддерживаемое и относительно работающее решение.

mod_cgroup не изучал подробно, но беглый взгляд на исходники говорит, что процесс совсем легко может выйти из своей группы. CloudLinux в этом месте хотя бы требует секретную uint32_t cookie, и при неверном её указании убивает процесс.

Тут как раз идеи из горячо обсуждаемого mpm-itk подойдут -- не давать процессу покинуть cgroup, а только умереть, но это большая дыра в производительности.

myhand:
Для этого не нужен новый mpm.

... для этого нужна новая операционная система! 🤪 (cloudlinux)

Raistlin:
чета у меня такое ощущение, что виртуалки на разных хардах... ? Т.е. lvm натянут на большой массив и /vz/DomU2 - включает в себя не один хард?

---------- Добавлено в 17:09 ---------- Предыдущее сообщение было в 17:06 ----------

или не. один файл имаджа в начале харда, второй - в конце. Если это какой-нить терабайтный диск - вполне логично ).

Это хорошая идея. Попробуйте через kpartx примонтировать образы виртуалок к ноде и провести такую же проверку.

myhand:
Вот заданный вопрос (дальше ТС его отдельно повторили). Надеюсь вы извинитесь за "все"?

Да, приношу извинения. Как только в теме начался обычный процесс выяснения, кто квалифицированее, я стал читать её по диагонали и не заметил целых три сообщения, касающихся проблемы топикстартера :)

Romka_Kharkov:
Я думаю что после второго поста от ТС, мало кому стало интересно отвечать..... пошел банальный флейм :D

Да нет, местные админы никогда бы не упустили шанс поопускать друг друга ;)

Намного интереснее то, что все системные администраторы спалились в своём полном непонимании работы TCP-стека -- уже во втором сообщении топика фатальная ошибка, а на неё даже никто не указал.

Zaqwr:
Boris A Dolgov, я думаю у вас там не более 8 гигов памяти

Нет, там 16.

[root@CentOS-60-64-minimal ~]# cat /proc/sys/vm/zone_reclaim_mode

0

У Вас материнки какие-то не такие :)

Всего: 2623