Is fly.io a good fit for building microservice architectures? Could we feasibly run 100+ services on it?
With service discovery and private networking this definitely seems possible. We are currently just starting out, building an alpha of our product as a single application, but hope to break it down later as our team grows and our products diverge.
fly.io would replace a lot of the stack and subsequent staff that we’d need to build a platform like this ourselves, which means we can concentrate more on the product. We’d still probably end up building custom tooling around fly.io API, but that’s pretty straightforward.
What would be nice is to get a bit more control around the deploy/release phases of an app. My understanding with fly.io at the moment is that deploying and releasing a new version of an app is one action, which relies on a health check and traffic is gradually switched as the replicas come up. I’d really like the ability to deploy the software, and then separately release, perhaps in a blue/green approach or even better traffic split using weights and/or HTTP headers. Is this something that could eventually be built in?