.NET Developer Days 2017: Microservices Everywhere

by Oliver 27. October 2017 09:00

"Microservices" was the buzzword during the conference with over half of the talks mentioning them and a few diving quite deep into the topic, e.g. Michele Leroux Bustamante with her session "Surviving Microservices". Here's a pretty diagram of what to imagine when hearing "microservices":

microservices_thumb[2]

[Diagram credits go to Chris Richardson from microservices.io]

Why Microservices?

Well, there are some neat things to learn from a microservices architecture:

  • a microservice forms the smallest architectural quantum (term coined by Neal Ford et al.) i.e. a part of a system's architecture that can be managed separately from the rest of the system
  • microservices can be developed and deployed by independent teams on individual schedules, thus minimizing coupling and risk of failure
  • microservices can be easily scaled out
  • Docker plays an important role in the deployment story

During Development

  • use a separate source repository per service
  • create NuGet packages for them, that can be versioned, and let consumers of your service decide when they are ready to upgrade
  • set up infrastructure early: Docker, DevOps, CI, CD

Troubleshooting

Well, with a distributed architecture such as one consisting of microservices, troubleshooting can become a real challenge. That's why it's important to implement something along the lines of an activity id that will be attached to every action processed in any of the microservices. This id can later be used to follow the flow of a business process through the application.

Wise quote at the end

Once you've accepted your flaws, nobody can use them against you.

Thank you. Happy microservicing!

Pingbacks and trackbacks (1)+

Comments are closed

About Oliver

shades-of-orange.com code blog logo I build web applications using ASP.NET and have a passion for javascript. Enjoy MVC 4 and Orchard CMS, and I do TDD whenever I can. I like clean code. Love to spend time with my wife and our children. My profile on Stack Exchange, a network of free, community-driven Q&A sites

About Anton

shades-of-orange.com code blog logo I'm a software developer at teamaton. I code in C# and work with MVC, Orchard, SpecFlow, Coypu and NHibernate. I enjoy beach volleyball, board games and Coke.