> When you construct an API, you receive scalability and load balancing benefits by decoupling your API and hosting it as its own backend
I've thought about doing this a couple of times but it seems like a lot of overhead if you need to have separate production instances running for each version of your API.
Is there a better approach to organize this in a more scalable manner?
The two options are have the different versions running on separate instances or have all versions in a single instance. The former lets you scale the versions independently. If v1 traffic drops 5x overnight then you can scale it down by 5x. The latter simplifies the deployment and management though. You just have to deploy one service and scale one service to a single amount of traffic.
I've thought about doing this a couple of times but it seems like a lot of overhead if you need to have separate production instances running for each version of your API.
Is there a better approach to organize this in a more scalable manner?