Blog Articles

2017: Time for a new resolution and the most important resolution for this year should be to adopt microservices to spend less effort on development and improve your time to market (TTM). Nowadays, there are plenty of tools and frameworks at the disposal of the discerning developer to rapidly build microservices. A few examples include Spring Boot, Vertx, etc.

Once you build your microservices, the next step is to ensure that these frequent deployments do not impact the availability of the microservice. And this is where the Zero Downtime Deployment (ZDD) comes in, which allows you to deploy a new version of your microservice without interrupting the operation of the service.

How to ensure a “smooth” deployment?

I started working on a Camel microservice based on Spring Boot that exposed a Rest service. One of the goals is how to provide ZDD & Hot reconfiguration feature for the users.

To achieve this goal, I simply have to deploy my microservice on OpenShift, which is based on Kubernetes. What is exciting is that, while successfully handling HTTP requests every second with uninterrupted availability, we have OpenShift perform a zero-downtime rolling upgrade of the service to a new version of the microservice while we’re still serving requests per second.

Conclusion:

It all depends on the frequency of your deployments and your production infrastructure. But if you already use multiple microservices, you have everything to gain from Zero Downtime Deployment, even if you only deploy a new version once a month!

You can learn more on the fundamentals of microservices using Red Hat open-source software.

Download and learn more about Red Hat JBoss Fuse, an innovative modular, cloud-ready architecture, powerful management and automation, and world class developer productivity. It is Java™ EE 7 certified and features powerful, enterprise-grade features such as high availability clustering, distributed caching, messaging, transactions, and a full web services stack.