[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