Облачные вычисления: когда оправданы усилия по использованию докера? - PullRequest
0 голосов
/ 05 февраля 2019

У меня очень долго работающий скрипт на python, который нельзя распараллелить (поэтому он однопоточный = выполняется только с одним процессом).

  • Это задание выполняется на моем компьютере несколько дней.
  • Он не получает никакой поддержки от графического процессора.
  • Для анализа и оптимизации параметров я предполагаю запускать это задание несколько раз;возможно, 10 - 20 раз с каждым разным параметром.
  • Поскольку ресурсы моего собственного компьютера ограничены, я хотел бы использовать мощный облачный ЦП для этой задачи.
  • Если я понимаю, чтооблачные процессоры действительно намного быстрее, чем мой собственный, поэтому я, вероятно, перенесу работу с AWS EC2 (Amazon Web Services) на более дешевое решение с фиксированной ставкой, такое как Hetzner.

В этом случае:имеет смысл поместить мою настройку в контейнер докера?

Или эта задача не оправдывает усилия по проектированию и прохождению кривой обучения при создании докера / докера и т. д .?

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Docker облегчит вам запуск вашего приложения в облаке в том смысле, что вы сможете намного проще переключать компьютеры.Кроме того, его будет легко запускать на дешевле , потому что вам не придется тратить много времени на раскручивание виртуальных машин, а также можно дешево и легко вращать виртуальные машины, зная, что только Docker запускает , и для загрузки программы не требуется никаких специальных шагов установки python или yum.

0 голосов
/ 06 февраля 2019

Ну, конечно, вам не нужно использовать docker для этого, из-за некоторых элементов, которые я перечислю здесь:

  • Использование Docker оправдано для использования в инкапсулированной среде, чтобы получить безопасностьи в основном контролируемый доступ между процессами контейнеров.
  • Другая распространенная привлекательность Docker - это аспекты непрерывной интеграции / репликации при разработке контейнеров, действительно полезно создавать контейнеры Docker для масштабирования с использованием Kubernetes или простого развертывания с использованием, например, Jenkins.
  • Youможете прочитать об этом здесь: https://www.linode.com/docs/applications/containers/when-and-why-to-use-docker/

Теперь, так как ваше приложение не нуждается в этом, Docker - не тот путь.И еще одно предложение: если вам нужно запускать его несколько раз с разницей в параметрах только между этими выполнениями, вам действительно полезно распараллелить его, чтобы получить мощный ЦП.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...