I'm currently at an early stage startup around the series B mark, and we're currently using a PaaS, like Heroku or Fly.io, to host our infrastructure. However, while these solutions have served us to a certain extent, we're hitting limitations in terms of features, integrations, hardware options, and overall system reliability. For some context: we run a NestJS monolith application, use RabbitMQ for background tasks, Redis for rate limiting, and have an AI microservice for ML models. Our databases are managed Postgres and Google Firestore, plus we use GCP Cloud Functions for some legacy systems.<p>We're considering moving to native cloud solutions on AWS or GCP but are concerned about the feasibility of the setup for our volume. Although Kubernetes is an option, the idea of managing a cluster seems daunting. So, we're exploring intermediate services like Fargate, Cloud Run, or Porter, which provide more advanced features while still being somewhat managed. Any recommendations?
Even on low-volume projects I've noticed reliability issues with Fly.io too. For example today we have requests timing out at the gateway (before hitting our services) while the status page indicates their current outage is only related to delayed app logs [0][1]. Haven't gone deep enough with the other new-ish PaaS providers (like Render and Railway) to get a feel for their limitations.<p>Unless you're certain you need K8s and have the in-house expertise to support it, I'd suggest going for Fargate or Cloud Run. Are there any requirements that you're concerned they won't meet?<p>- [0] <a href="https://status.flyio.net/incidents/q4tvqhthjmsy" rel="nofollow">https://status.flyio.net/incidents/q4tvqhthjmsy</a>
- [1] <a href="https://twitter.com/davydog187/status/1774874993618255977" rel="nofollow">https://twitter.com/davydog187/status/1774874993618255977</a>
Another option you might like is Flightcontrol[0]. It's similar to Porter, but newer and aims to make all the best AWS services as easy as PaaS. And unlike Porter, it doesn't charge more for horizontal and vertical scaling.<p>Today, the server deployments use Fargate, and are truly hands off just like PaaS. Soon we're launching ECS+EC2 support which will let you customize the EC2 instance type, use GPUs, and leverage reserved instances. ECS doesn't offer some advanced k8s features, but it's 80% or more of the benefit in an easier to use, cheaper package.<p>We commonly see Series A & B companies migrating off PaaS to Flightcontrol + AWS because they can keep the same workflows while gaining more reliability, control, and flexibility.<p>I'm cofounder, CEO. Let me know if you have any questions.<p>[0] <a href="https://www.flightcontrol.dev/">https://www.flightcontrol.dev/</a>
I've run / worked on two 7-8 figure early stage products on a handful of Heroku dynos, a medium sized Postgres, and RabbitMQ + workers for background stuff. Also cron jobs, ElasticSearch, and a few other things. You can get pretty far with basic infra if you don't have demanding computational needs. I really feel like making devops complicated and using complex setups on AWS/GCP is unnecessary for many startups.<p>I'm currently running a few small projects on Render and migrating one from Heroku to Render to save a few bucks.
I have been working with infrastructure for 15 years. and I have never seen a project that chose Cloud Native a solution or platform that simplifies working with infrastructure and does not regret it. It seems simple at the initial stage, but over time it will lead to a huge overhaul of the entire infrastructure. it works on the principle that entry costs $1 and exit costs $10.
The startup I work for is getting off a similar PaaS and evaluating Porter too; we really like the idea of the white glove service they have and flexibility across multiple clouds but was worried about general overhead in someone on the team needing to manage it, whereas the PaaS was so hands off (even if it was a black box). Curious what you and your team end up deciding on!