Setting up a deployment process on the cloud means a variety of choices. Most likely you’re prepared to make some tradeoffs. But getting a view across these potential tradeoffs can be difficult. Here are six popular deployments and advice for making the best choice for your organization’s needs.
Let’s assume you want a deployment for a small startup with fewer than 20 developers, each needing to host a web app that’s gaining traction and for which rapid growth is expected. Its requirements are as follows:
Autoscaling support to handle expected surges in demand
Maximizing developer efficiency by automating tedious tasks and improving dev flow
Encouraging mature processes for building a stable foundation as the codebase grows
Maintaining flexibility and agility to handle hotfixes of a relatively immature codebase
Counting on a few sources to fail, because any of them can cause deployment failure – imagine GitHub failing or a required plugin becoming unavailable