12/6/18

Week #45's Wednesday Evening Training: Microservices - What, why and how?

Tonight it's Sinterklaasavond in Holland, so there is no Wednesday Evening Training. Hence a good time to settle my debt and write a blog article on week #45's Wednesday Evening Training. I had not finished it yet.

Microservices: what are we talking about?

A Microservice is a variant of the service-oriented architecture (SOA) architectural style that structures an application as a collection of fine grained, loosely coupled services using lightweight protocols. These services can be deployed separately, so that development can be parallelized enabling small autonomous teams to develop, deploy and scale services independently. This allows the architecture of individual services to emerge through continuous refactoring and enables continuous delivery and deployment.

Dividing an application into small pieces also gives additional challenges. Coordination, flow control, integration, monitoring and exception management for example, will have to be supported separately. That is why a Microservice architecture should be provided with Microservices that take on such tasks. Needless to say that correct application of architecture patterns is crucial here.
Besides implementation, activities like testing also gives some extra challenges.

In addition, to make deployment easier, special platforms can be used to easily deliver and deploy Microservices. A good example of such a platform is Docker, that enables Containerization. We've planned some Wednesday Evening Trainings to take a dive in Docker in the upcoming months. Make sure you don't miss my blog posts on these sessions!

I'll be writing more on Microservices in a separate blog post I'll be writing shortly (promise!).



Back to this evenings Wednesday Evening Training...

In this session, Bart van Beek (one of our top Java developers) and I explained the basics of Microservices both from coding and architectural perspective. We've also taken a deep dive into code and did walkthrough of a real project (Java) with one of our clients. There was plenty of opportunity for Q&A and discussion.

We'll be definitely plan additional sessions on Microservices, since this architecture is here to stay and there is still much to learn and share to implement this architectural style effectively and efficiently.


Further reading

Do you want to read more on the topics in this post? Here are some links…

Microservices Resource Guide: https://www.martinfowler.com/microservices
Great articles and pattern descriptions of Martin Fowler: https://www.martinfowler.com/articles/enterprisePatterns.html
Microservice Design Patterns Catalog: http://microservicepatterns.org
Microservice Architecture Tutorial: https://www.tutorialspoint.com/microservice_architecture/index.htm
Designing, building, and operating microservices on Azure: https://docs.microsoft.com/en-us/azure/architecture/microservices
.NET Microservices: Architecture for Containerized .NET Applications: https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture
Microservices architecture style (challenges, best practices, etc.): https://docs.microsoft.com/en-us/azure/architecture/guide/architecture-styles/microservices

Past Wednesday Evening Trainings on all topics

You 'll find post of previous sessions here: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining


#wednesdayeveningtraining #capgemini #lifeatcapgemini #microservices

No comments:

Post a Comment