Microservices are slowly becoming the preferred way to build big, easy to maintain and highly scalable systems thanks to tools like Docker, CoreOS, etcd, Consul, Fleet, Mesos, Rocket, and others. Due to the goals today’s competition sets in front of us (flexibility, speed, and so on), microservices are probably the best type of architecture we can apply.
It’s a quest to deploy often and fast, be fully automatic, accomplish zero-downtime, have the ability to rollback, provide constant reliability across environments, be able to scale effortlessly, and create self-healing systems able to recuperate from failures.
Before containers became common, microservices were painful to deploy. On the other hand, monolithic applications are relatively simple to handle.
Docker made it possible to work with containers without suffering in the process. They made containers accessible and easy to use to everyone.
Docker allows you to package an application with all of its dependencies into a standardised unit for software development, code, runtime, system tools, system libraries – anything you can install on a server. By encapsulating and isolating everything in a container, this guarantees that the container will always run the same, regardless of the environment it is running in.
One can have DevOps Continuous Integration (CI), Continuous Delivery / Deployment (CD) and leverage Docker ecosystem to deliver often and fast, be fully automatic, accomplish zero-downtime, have the ability to rollback software products.
A reference of automated workflow below:
I had organised a meet up event for learning ‘Docker with DevOps - One step towards Microservices’ with hands-on. It was great success in terms of learning and having intellectual discussion around Docker, DevOps and Microservices.
Slides and Youtube recording are below:
If you interested to explore about Microservices, check book “Building Microservices” by ‘Sam Newman’. Also check the-devops-2-toolkit for DevOps and tool kits.
Hope this will help you to have intellectual discussion around Microservices architecture. You can always reach me on my Twitter account or email me.