Свои сервера vs Vercel: подскажите, где разворачивать свою инфраструктуру
Публичный постМне кажется, разработчики новой волны, которые молятся на vercel, kubernetes, и распределенные edge сервера (это все речь про бесконечно горизонтально расширяемые serverless и lambda функции и PaaS провайдеров), не всегда и не вполне себе отдают отчёт, как круто может раздавать одна нормальная машина с nginx и каким-нибудь node.js на борту.
ScrapeNinja это не самый простой SaaS с несколькими тысячами пользователей, 1M+ длительных API запросов (с latency 2-20 sec!!) в день, и оно все крутится на двух хетцнер облачных инстансах. За сорок долларов. Суммарно. Вместо кубернетеса и динамического горизонтального скейлинга используется пять строчек в nginx. И это все работает как часики!
Не нужен вам этот DevOps и микросервисы, если вы только начинаете SaaS пилить, делайте монолит и будьте счастливы. Если бизнес начнет зарабатывать, то всегда потом разберётесь, как решить проблему масштабирования. Если начнет. Ведь главное и самое сложное бутылочное горлышко - это когда 100 лидов сконвертировались в 0 платящих, а не вот эта вся фигня с серверами.
Отказоустойчивость? Пара часов даунтайма еще ни один нормальный продукт не убивали, а вот недостаток денег в кармане - вполне.
Навеяно это все одним Реддит топиком, где парнишка за лямды отдал облаку весь свой MRR (Monthly Recurring Revenue) и ещё докинул сверху. И это ведь еще не единственная проблема Vercel / Netlify / Cloudflare workers (когда используются serverless backend функции), это еще и vendor lock-in, когда менять провайдера инфраструктуры - неприятно и больно.
Vercel пытается балансировать между своим облачным офферингом и имиджем белых и пушистых ребятишек, ведь можно next.js деплоить не только к ним в облако, но и на обычный сервер… В теории. На практике мало кто понимает, как это делать в настоящем продакшне, да и много фич работать не будет (не скажу что глубоко копал, это все следует из моего довольно поверхностного изучения next.js)
Хотелось бы послушать людей, которые хорошо разбираются в разворачивании своей инфраструктуры, и при этом активно пользуются Vercel / Netlify и аналогами. Как там дела, какие плюсы, какие проблемы?
Это репост из моего тг канала https://t.me/saas_founders
Юзаю Cloudflare Pages когда не нужен бэк, в основном для лендингов на реакте. Просто закинул ему приватный гит репозиторий и он сам билдит сайт. Настроил и забыл. И все это бесплатно.
Serverless functions удобно когда тебе нужен допустим обработчик формы какой-нибудь. Нормальную логику на них я не думаю что можно делать.
Сам много пишу на Next.js, хощу на впске у того же Hetzner. За 5 евро у меня там и фронт и бэк и даже бд. Юзаю Caprover чтобы управлять контейнерами. Это этакий селф хостед PaaS с веб мордой. Туда же у меня настроен CI/CD через github actions. Минусы у такого подхода есть и существенные - никакой отказоустойчивости и плохая масштабируемость. Если бд сожрет все место на диске - умрут все сервисы. Ну и скиллы админить линукс тут очень нужны. Зато дешево и своими руками.
С кубернетесом не работал, но собираюсь вкатываться и переводить свой зоопарк на него. Когда у тебя 10 впсок с кучей сервисов на них, встает вопрос как этим делом нормально управлять.
Vercel и прочие круты как раз тем, что тебе не надо возиться с администрированием, никакого ssh, даже докер знать не надо. Пишешь код, пушишь, проект сам билдится и доступен юзерам.
А какой сервис можно использовать для своих пет проекто, куда полноценное приложение и с фронтов, и с беком можно закинуть?
Пишу на vue и react, для этого достаточно github pages, но вот как можно задкплоить с беком на go
У продукта есть жизненный цикл, на старте у тебя нет ни команды, ни бюджета, ни понимания market fit. Важно быстро запуститься и поставлять, вот тут все эти реселлеры лямбд от амазона и нужны.
Если поперло, то заливаешь проблемы деньгами сейчас и занимаешься cost saving в фоне.
Поэтому практически во всех крупных софтверных компаниях используют hybrid cloud в том или ином виде т.к. одновременно кто-то стартует новый продукт, а кто-то доживает до EOL.
Вот недавний поучительный пример https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90
Комментировать про 5 строчек в конфиге Nginx не буду.
Запилил тут веб-сокет бекенд на питоне и фронт на реакте, как быстрее всего задеплоить? Я даже готов платить до 5$/мес