Высокая нагрузка на процессор - с чего бы?

RaPaMaN rapaman at virthost.net
Wed May 25 07:53:20 MSD 2005


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






More information about the nginx-ru mailing list