Где развернуть приложение NodeJS Express MongoDB в 2020 году

#node.js #mongodb #deployment

#node.js #mongodb #развертывание

Вопрос:

У меня есть приложение, которое использует NodeJS Express и MongoDB, которое действует как API для приложения Nuxt. Где бы вы его развернули? До сих пор я использую Heroku и MongoDB Atlas, но с балансировщиками нагрузки цены становятся выше.

Я думал, что на:

  • VPS на Hostinger (кажется плохой идеей)
  • AWS Elastic Beanstalk (я попробовал это, и конфигурация и документация — это ад)
  • Шеф-повар узла (не уверен, что пойдет по этому пути, так как у него есть несколько плохих отзывов) https://www.nodechef.com /
  • Облачная платформа Google

Заранее спасибо за некоторые соображения по этому поводу.

Ответ №1:

Я рекомендую заменить NodeJS Express для вашего API на Nuxt.js Вместо этого используется serverMiddleware. При таком подходе вам не нужно иметь дополнительный вычислительный экземпляр для запуска NodeJS Express, ваш API теперь работает вместе с вашим приложением Nuxt, и самое лучшее — минимальные изменения в существующих кодах.

Основываясь на моей предыдущей реализации, при таком подходе вы можете легко развернуть свой код в Vercel или Netlify

Комментарии:

1. Я подумал об этом, да! Поскольку два приложения уже разработаны и разделены, то рефакторинг для установки приложения express в приложение Nuxt будет значительным. Кроме того, не могли бы вы рассказать мне, какие преимущества вы видите при реализации более монолитной архитектуры, подобной той, которую вы предлагаете?

2. Преимущества предлагаемого мной подхода заключаются в основном в решении проблем стоимости и безопасности. Использование Vue.js и Nuxt.js , когда приложение вызывает API, вы можете легко проверить конечные точки API из браузера. Итак, ваши конечные точки API открыты. Но если вы часто вызываете API-интерфейсы, в большинстве случаев я использую serverMiddleware в качестве прокси-сервера API для вызова своих внутренних и внешних конечных точек API.

Ответ №2:

Лучшей платформой, которая также является экономически эффективной, является Digital Ocean. Вы можете использовать их платформу приложений, которая невероятно проста в настройке, и вы должны быть готовы и запущены через 30 минут.

Комментарии:

1. Как вы думаете, я бы получил более выгодную сделку, чем с Heroku или AWS?

2. Вы получите более выгодную сделку, чем Heroku, но с AWS довольно туго, так как вы можете пользоваться AWS бесплатно до 12 месяцев в зависимости от потребляемых вами ресурсов.