Skip to main content

Why Microservices?


I have a few tidbits about why to use microservices and why it makes sense to create few microservices as a side project and learn from the same. A lot has been said on why you should use microservices in the internet, that said, I look at it from a practical point of view and give you a very basic idea why we should use microservices and stop monoliths from becoming huge mountains of code in the future.

Advantages

  • Simpler codebase(s) - Multiple projects with simpler code to maintain.
  • Single responsibility - The microservice has a single responsibility and moves the developer from the mindset of developing everything together into separating multiple functional aspects into separate codebase.
  • Test coverage naturally increases - since the codebase becomes smaller, the code coverage increases and bugs are figured out earlier in the development lifecycle.
  • Readable codebase - Smaller equals precise and more readable and understandable. You have to understand this is different from simpler codebase because readability is a different aspect in itself.
  • More power to the developer - Developers can choose and implement their own languages or databases as long as the other teams can also chip and debug if necessary. So developers get more freedom to do what they want to do - code away!
  • Time taken to develop each microservice becomes less.
  • Change is less expensive to implement - As the services are small and easily readable and created within days and weeks, the changes to the same codebase becomes really less and better to make those changes and deploy them easily
  • Versioning becomes mainstream - incase of APIs, microservices make you follow versioning and it becomes the first nature of developers to implement versioning in their endpoints/REST api endpoints so that other microservices can still depend on the old endpoints. This helps in making versioning an explicit way of programming with microservices.
There are other reasons as well, but the above summarizes why you would need microservices and you can depend on the microservices to build your next project/sideproject. There are complexities as well in orchestrating the microservices, but I will work on them as a post at a later point of time. Meanwhile, you can practice and write your own microservices and play with them. Keep tuned for more posts.


You can follow me at Twitter, Facebook, LinkedIn and Website.

Comments

Post a Comment

Popular posts from this blog

Proactive Support Stories #1: How A Call Saved My Day

Basic Support or Unnecessary Support?

Back in the day, when I was running my own startup, I had this fear of missing out on important meetings and I would make sure that I block my calendars with enough of them to ensure that I was on top of everything. In my opinion, this is a basic requirement any executive would have. Comparing this to the customer mindset, there is a very simple yet important requirement that customers want to know any updates to their service or product and how it impacts them at any given moment.

Customer Acquisition is Important. But Retention?

I would like to continue by telling a story that happened to me a few months back. I wanted to commute and I had gotten tired of the two popular cab services in Chennai. I wanted to try something new and got hold of another service provide who was a new entrant to the market. I had started to like their service and was wondering if I could switch completely to them and make my life easier. This is when the following incid…

Building Microservices For Quick Wins - An Insight - Part 1

Introduction Getting a quick win is hard because it needs multiple ideologies and practices to come together. It would ideally be a combination of least time to support the customer and to help the customer at the right point of their journey. By helping our customers to do the above, we help our products to grow steadily. Microservices can be likened to fast acting customer support, where we are building things in a faster and leaner way. Let’s talk about why an organization would need microservices in the first place.
Why Microservices? As a first hand believer of picking the right tools for the right jobs, I would caution the reader that Microservices might not be a good fit for all organizations. You will have to take a stock of the needs, the pros and cons of an architecture style and then take a decision to either migrate or start building through the specific architecture. Microservices do help in a few things as the organization grows and it helps the product to be modulariz…
You will receive wonderful short stories written by him and inspirational articles once every month.