У меня есть функция в моем CMS, который позволяет пользователю загружать zip-файл, полный изображений, и сервер извлечет их и введет каждого в галерею изображений. Я заметил, что это размалывает ЦП вполне сильно и заставляет другие запросы замедляться.
Я думаю об использовании delayed_job плагина для делегирования каждого дополнения изображения в фон, но я также хочу отдать тому процессу более низкий приоритет ЦП так, чтобы это не срывало сервер.
Я довольно уверен в задерживающейся части осуществления, но часть регулировки - то, где я застреваю. Существует ли рубиновый способ понизить приоритет вызова метода?
Это - изображение, изменяющее размеры, который вызывает ЦП, жуют.
Любые приветствующиеся идеи:)
Если ваша CMS работает в системе Linux, вы можете сделать это с помощью команды "nice". "nice" запустит процесс с более низким приоритетом. Самый простой способ использовать это - просто поставить перед своей командой приятное. Так что, если вы выполняли команду типа
unzip uploaded-images.zip
, вместо этого запустите
nice unzip uploaded-images.zip
Это приведет к тому, что процесс распаковки получит более низкий приоритет ЦП, позволяя другим процессам беги первым. См. страницу руководства для получения дополнительных сведений, например, о том, как настроить уровень приоритета.