На каком сервисе удобно запустить вечно программу с сильно плавающей нагрузкой?
Моя программа большую часть времени вяло мониторит внешнюю БД с задачами. Делает запрос к БД раз в несколько минут. Между запросами программа спит — time.sleep(120) на python. При этом потребление ресурсов (особенно CPU) очень низкое.
Условно раз в час программа замечает и обратывает задачу, при этом запускаются внешний субпроцесс, сильно нагружающий CPU и требующий больше RAM.
Программа работает под Linux (Ubuntu) 64bit и не требует графического интерфейса.
Для работы нужно 10-100 гигабайт на HDD для хранения данных. Не столько для активной работы, сколько для архивирования.
Сейчас она крутится у меня дома. Я хочу запустить скрипт где-то в облаке и работать с ним по ssh.
Где мне разместить эту программу? Есть ли такая система, в которой я платил бы за CPU и RAM по мере их потребления? Мне кажется, что мне нужен какой-то AWS, но не могу понять, что именно.
Вопрос в том, сколько вы готовы вложить в изучение платформы и адаптацию вашей апликации.
Возможные варианты:
- самый модный, но с серьезной learning curve - Kubernetes. По-моему, не стоит
- GCP App Engine, AWS Elastic Beanstalk, Heroku и т.п. - более реальный вариант
- просто дешевый VPS (OVH, DigitalOcean, Linode, есть и дешевле) - самый примитивный, но и самый простой
И вряд ли получится дешевле час VPS из первого комментария. А даже если и дешевле, то я не смогу сэкономить больше чем 480р в месяц. Не стоит того, наверное...
Поддержу dimonchik2013, но добавлю что если у вас настолько мало нагрузки и python то, может, посмотреть в сторону serverless? Таким образом может оказаться что это будет даже условно бесплатно.