Session Name: Continuous Delivery: From Distributed Monolith to Microservices as Unit of Deployment
Every organisation now a days is leveraging Microservices for their Core Business Domain implementation and is striving to release the product more often but in an attempt to do so, they typically land in deploying all the microservices as part of their release cadence. This pattern of deployment has multifold risks involved, but more importantly, it burns out everyone on the Engineering side - right from the Release Manager to Leads and Developers, in ensuring that all microservices are deployed and that everything is working as expected and that should anything goes wrong or is not working, then the release has to rollback which means rollback "literally" everything. And then comes an important question from the Teams - aren't we doing Microservices and shouldn't our unit of deployment be a single domain service and not entire set of services as a whole ?
Valid question, and this triggers a series of brainstorming session between the product and the engineering team to improve the deployment process with the intention to: 1. Deploy (and not necessarily release) the feature as soon as it is available 2. Strive for Zero downtime deployment 3. Deployment with low risk, and no rollback mindset 4. Most important, make everyone's life easy :)
This session talks about the process and operational aspects around what needs to be done for Continuous Delivery of a Microservices based product and the above 4 points are the key takeaways of this talk.
A Technology Evangelist and Solution Provider with expertise on cloud migration and building scalable product using Microservices Architectural Style clubbed with Event Driven Architecture. AWS Community Builder for the last 3 years, 7 Certificates on AWS & Kubernetes, Blogger and Technology Speaker.