Instead of a monolithic approach, build a number of smaller applications that can call each other as necessary via APIs. Automated scaling allows you to keep costs down whilst ensuring demand is met.
Cloud technologies depend on good elasticity to be competitive. It’s easier to see which parts of your application are the most resource hungry (or the most utilized) and improves troubleshooting.
Building with micro-services is good practice is generally thought to be good practice. It allows improvement of individual services which adds agility.
Go Serverless where possible as this puts the onus on the CSP to provide the automated scalability.
With fully Automated scaling, horizontal scaling occurs in response to your Alerts.
NB. Applications divided into micro-services need to be stateless!
]]>Why?
All Cloud services worthy of the name can be used or accessed using their API. By calling this API via code we can benefit from:
Why?
What if your infrastructure breaks? What if there is a disaster? Rebuilding can take considerable time. If your solution is built from repeatable code then recovery can also be automated.
Chunks of well crafted repeatable code can be pieced together to form more complex solutions, saving time in the long run.
Continuous Deployment which is a pillar of agile entities can only be achieved with automation.
A complete and well defined automated solution creates a perfect staging environment, protecting your production environment without the need for human change control.
]]>