| 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_* и т.п.) 
 
 |