Выполнение всей обработки на одной машине или использование Virtualization / Cloud (доверять ОС или использовать Virtualization?) - PullRequest
0 голосов
/ 16 февраля 2020

Я занимаюсь разработкой бэкенда для движка машинного обучения. Мы используем Python и Flask. Я также использую gunicorn и nginx для производственного сервера.

Среда

На сервере одновременно выполняется много задач с интенсивным использованием ЦП. Они могут создавать дочерние процессы и пытаться использовать ЦП еще больше (большинство задач не созданы мной, я не контролирую их использование ЦП внутри кода). Сервер имеет 128 ГБ ОЗУ и 32 ядра, хотя в большинстве случаев он занят на 100%.

К счастью, дизайн бэкэнда позволяет мне распределять задачи по другим машинам, не влияя на пользовательский интерфейс.

Тест

Я также успешно протестировал модульную конструкцию, используя несколько виртуальных машин. Я выполнил несколько задач два раза, один раз без виртуализации, и снова с этим. Результатом стало более быстрое выполнение почти всех задач модульного дизайна, за исключением некоторых длинных задач. Похоже, что операционная система не заботится о размере моих задач (на самом деле она не знает разницы между некоторыми жадными процессорами Python задач) и не распределяет между ними ресурсы обработки.

Вопрос

Полезно ли использовать виртуализацию или нанимать несколько других машин в облаке для выполнения задач? Этот вопрос касается доверия операционной системы и gunicorn к управлению параллелизмом, распределению ресурсов и приоритетов задач.

было бы неплохо ...

Мой собственный выбор используя виртуализацию или облачные машины, хотя я не уверен, исходит ли это предпочтение от работы, которую я проделал для модульного дизайна, или она действительно лучше. Кроме того, руководство стремится продолжать работу с текущей системой, поэтому у меня должны быть веские причины для замены текущей машины, которую мы наняли, на несколько машин с более низкими характеристиками (общая стоимость моего решения ниже, чем текущий счет, который оплачивает компания, хотя общая стоимость спецификация наемных машин будет выше).

...