[Moscow.pm] Как незаметно для других скушать дисковый ресурс других серверов?
Nick Knutov
mail на knutov.com
Вс Авг 5 10:15:30 PDT 2012
Мне кажется, хорошим решением может быть openvz с двумя вдс с разными
iopriv. Но надо попробовать, точной уверенности нет.
04.08.2012 21:33, Михаил Монашёв пишет:
> Здравствуйте.
>
> Есть 10 серверов. На каждом сервере запускается один и mysql-сервер и
> 100 экземпляров одного перлового скрипта (с минимальным приоритетом,
> чтобы им оставалось только неизрасходованное процессорное время) . Это
> скрипт пишет очень много данных на все сервера в mysql-и. Диски
> перестают справляться с запросами на запись и все другие процессы,
> которые читают или пишут в те же mysql-и начинают тормозить. Т.е. надо
> придумать, как отдавать этому скрипту только свободный дисковый ресурс
> другого сервера, да так, чтобы другие более важные процессы,
> обращающиеся к этим же mysql-ям, не тормозили.
>
> Основная проблема в том,
> что нагрузку на одном сервере создаёт процесс с другого и из-за этого
> приходится мониторить нагрузку периодически, а не постоянно. А она
> меняется с момента измерения. Кроме того, в зависимости от самой
> нагрузки приходится выставлять разные границы, когда нагрузка
> считается высокой. В качестве показателя дисковой нагрузки я использую
> время выполнения одной операции чтения/записи. Чтобы гасить нагрузку я
> делаю Time::HiRes::sleep($timeout) и меняя этот $timeout пытаюсь
> адаптироваться под текущую нагрузку.
>
> Операционка FreeBSD 8.X.
>
> Сейчас зашёл в тупик, ибо нифига не выходит сделать адаптирующиеся под
> текущую нагрузку алгоритм. Всегда выходит две крайности: или много
> неоправданного простоя или диски перегружены и всё тормозит.
>
--
Best Regards,
Nick Knutov
http://knutov.com
ICQ: 272873706
Voice: +7-904-84-23-130
Подробная информация о списке рассылки Moscow-pm