Chapter 3. Independent Life Cycles

For a variety of reasons, you often find parts of your application that need their own commit-to-production flow. Let’s consider this dynamic and how microservices can help. Independent life cycles are a larger concept that is arguably a superset of multiple rates of change, allowing you to be nimbler in today’s disrupted marketplace.

Always Be Changing

Monoliths are big ships and they don’t turn on a dime. While that might have been workable a long time ago in a galaxy far, far away, today you must be able to respond to an increasingly dynamic environment. Speed matters, and your business partners may not be able to wait for a quarterly release window. Standalone microservices can have their own life cycle with their own repository and a separate deployment pipeline containing the appropriate tests and code quality scans allowing you to capitalize on new opportunities.

The semiannual release cycle doesn’t cut it anymore. A monolithic approach usually hinders our ability to deliver quickly, run A/B tests, and learn from users. Chances are, you are being asked to innovate in days or weeks, certainly not months or years. Disruption impacts every business today, and your industry is not immune. Returning to the Widget.io example, what happens if your business partners identify a new opportunity? Can you get that functionality into production sooner rather than later? You could tell them to just wait until the next release, but the business opportunity ...

Get Responsible Microservices now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.