Нужно выбрать платформу для написания сервиса по управлению ip-камерами.
Предполагается, что эта фигня будет самостоятельно ставиться людьми (нужен удобный деплой).
Нужно:
- развитая платформа, удобные библиотеки
- адекватное потребление ресурсов
- простое развёртывание с точки зрения пользователя. В идеале человек должен получить более-менее готовый к продакшену сервис просто склонировав реп, скомпилировав и запустив.
Взял бы сразу Rails, ибо удобная и развитая платформа. Но у Ruby (и Rails в частности) очень серьёзные проблемы с памятью, один свежий инстанс приложения занимает где-то 80 Мб, а в процессе работы отжирается где-то до 200-300. Соответственно нужно караулить и рестартовать. Сложно и неудобно.
Erlang/Cowboy — всё отлично с потреблением ресурсов, с развёртыванием, вроде библиотек более-менее. Однако, как мне кажется, неудобен для такого проекта. Нам нужно очень много всяких мелочей, всякой логики и кастомизации, хотелок.
Возможно Rails обернуть в докер-контейнер, и весь цирк-деплой делать внутри, но мне эта идея как-то не по-душе.
Смотрю на связку Python/Flask: вроде и платформа более-менее развитая, и вроде как с потреблением получше.
У JVM-based языков те же проблемы с памятью что и у Rails, подскажите? Я имею ввиду всякие скалы и clojure.