AFAIK, теория говорит, что умножьте коэффициент 1 на ядро процессора, чтобы определить оптимальную среднюю нагрузку. Итак, для сервера с 8 ядрами ЦП оптимальная средняя нагрузка будет 8, 16 ядер = 16 и так далее. Однако при использовании mogrify Imagemagick я вижу огромные средние значения нагрузки:
top - 14:00:44 up 9 days, 20:12, 6 users, load average: 130.37, 87.53, 56.94
Tasks: 588 total, 11 running, 577 sleeping, 0 stopped, 0 zombie
Cpu(s): 99.8%us, 0.2%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 49555072k total, 33129928k used, 16425144k free, 3813092k buffers
Swap: 23438824k total, 47276k used, 23391548k free, 26145156k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
29490 user1 20 0 121m 33m 2728 R 240 0.1 9:10.52 mogrify
29337 user1 20 0 121m 33m 2728 R 234 0.1 12:01.94 mogrify
29882 user1 20 0 121m 33m 2728 R 231 0.1 3:57.54 mogrify
29232 user1 20 0 121m 33m 2728 R 223 0.1 11:34.54 mogrify
29514 user1 20 0 122m 33m 2728 R 223 0.1 9:22.84 mogrify
29689 user1 20 0 121m 33m 2728 R 219 0.1 7:28.18 mogrify
29204 user1 20 0 121m 33m 2728 R 206 0.1 12:21.33 mogrify
Как видно из top
- проблем с сервером нет. Такое поведение возникает только при вызове mogrify
.
Почему это происходит? Как я могу это исправить или хотя бы немного приглушить?
Спасибо!
Изменить: обычно они работают так долго. Сервер как обычно реагирует. Я обрабатываю 618 изображений в среднем размером 2,5 МБ. Нагрузка распределяется между несколькими серверами, которые top
выходы выглядят очень идентичными. я прочитал эта тема который мне еще предстоит проверить. Мне кажется, что mogrify (или Imagemagick) «переоценивают» процессоры. Следовательно, загрузка ЦП на 200 +% на задание.
Вы занимаетесь обработкой графики. Это по своей сути интенсивно использует процессор.
Решение состоит в том, чтобы прекратить обработку графики или, по крайней мере, делать ее меньше - обновите все, что вызывает mogrify
поэтому он не может выполнять столько параллельных задач. Если это не вариант, разделите нагрузку (добавьте еще один сервер и отправьте туда часть работы).
Обратите внимание: если ваша средняя загрузка составляет 130, а ваша система по-прежнему реагирует и делает все, что вам нужно, своевременно, у вас нет проблемы, у вас есть «проблема» (это не выглядит хорошо, на любой системный администратор скажет вам, что это, вероятно, что-то плохое, и вам следует рассмотреть решения, подобные тому, что я описал выше, но если это ничего не вредит и не становится существенно хуже по мере увеличения масштаба, вы можете игнорировать это как «нормальное» для этой среды ").
Я нашел решение. Я проверил 2 версии ImageMagick
- 6.5.1 и 6.5.7. Старая версия поставляется с Ubuntu Karmic 9.10, более новая - с Ubuntu Lucid 10.04. Обе версии 64-битные. Я заметил, что версия 6.5.7 быстрее, чем 6.5.1, а также не сильно нагружает сервер. Как и следовало ожидать, он производил нормальную однозначную нагрузку. Для обеих версий mogrify
был многопоточным.
Итак, теперь я доволен. Если найду немного свободного времени, проверю, в чем разница.