Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Высокая нагрузка на процессор - с чего бы?
Igor Sysoev пишет:
On Tue, 24 May 2005, RaPaMaN wrote:
А вы поставьте mysql без тредов или вообще поставьте бинарник от
mysql, без собственной сборки и посмотрите.
Даже без тредов ему должно полегчаеть. По своему опыту на линуксе,
thread сборка хуже переносит пики нагрузки, но это еще зависит от
сборки ядра. У меня на двух машинах mysql с thread вел себя очень
"паскудно", после замены на бинарную сборку - уже больше трех месяцев
я про него не вспоминаю на этих машинах.
В данном случае, насколько я вижу, претензии уже не к mysql, а к nginx.
Кстати, а с какой версии mysql научился работать без трэдов ?
Я немного некорректно выразился, укоротил мысль, без тредов он не работает.
Я хотел сказать, что у него монолитный процесс висит в памяти, а
стандартная сборка (не своя) всегда дает пачку процессов. Какая это
опция сборки - я не помню, но насколько я понимаю - такой монолитный
процесс - это чистая тредовая модель.
Но вот именно такие монолиты работают нестабильно и нагрузку держат
очень плохо. Поэтому mysql по своему опыту - я всегда беру прямо
бинарным с их сайта, а не развлекаюсь с компиляцией и эффектами от нее.
Так же при таком монолитном процессе, особенно на FC2-3 ядрах (линукс),
если неправильно настроен VM в ядре или попали на ядро, в котором грабли
с VM - можно получить, что Ваш mysql будет старательно прибиваться
интеллектом VM, из-за - "ой, много жрет процесс, а ну ка я его снесу".
Это тоже очень забавная головоломка, если не вспомнить про новые
возможности VM.
кому интересно - это серия параметров ядра, через sysctl или proc -
vm.* (vm.overcommit_* и т.п.)
|