2018/04/04

Microservices reference architecture, tools and frameworks

"The Microservices train" made by Roger van de Kimmenade (see my Photos page)

Intro

I am a fairly newby within the Microservices world but I have more experience with Service Oriented Architecture, Event Driven Architectures and more. So lately I began to read more about the architecture style of Microservices. In each blog item or news item I come across a new name of a tool/framework. So the idea came to try to make a reference architecture and a toolsheet in which each tool is mapped to that reference architecture. I have come to a state that I can use your help! Which concepts are missing and which tools can I add?
Please leave comments.

Reference Architecture

This is my first go of a kind of hybrid Microservices reference architecture, in which an integration layer is used to expose COTS products and legacy.


Tool/framework sheet

The next sheet is freely available and contains a list of tools and frameworks, that can be used within the Microservices ecosystem. I know it is far from complete, so thats why i need you!
The type is the most clearest capability of the tool. The other capabilities are also present. This list of capabilities needs to be extended too. And also here your help is helfull !

Link to the sheet:

7 comments:

  1. Really great information on Microservices....

    ReplyDelete
  2. This is good with respect to key ingredients like API gateways, service mesh, devportals and infra monitoring but what's still left and to be defined is micriservices own implementation enabling Saga architecture and all related aspects to achieve overall API strategies. I believe people are still implementing microservices in a very simplistic way which is not the case in real world.

    ReplyDelete
  3. I think a traceability solution is a must. You can use Zipking for this capability.
    On the other hand, monitoring is important, but teams are not going to watch always every dashboard: you need a solutions for alerts too.

    ReplyDelete
    Replies
    1. True ! I will add this to the reference architecture. Thanks! Would it be nice if this is implemented within ServiceMesh frameworks?

      Delete
  4. Etcd is not a service mesh, just a key value store, like zookeeper.

    Kubernetes can also provide reverse proxy functionality when using ingress. The actual ingress controller (proxy server) can be implemented using nginx.

    I think nginx deserves a place on the list as well.

    React is not a container manager/orchestrator. DC/OS however is.
    I personally consider using a container orchestrator an absolute must when delivering your microservices as containers. Kubernetes send to become the defacto standard.

    Also perhaps replace AngularJs with just Angular. (AngularJs is the classic/v1 version noone should be using anymore).

    ReplyDelete
    Replies
    1. Regarding monitoring and logging, you may want to add the ELK-stack as well.

      Delete
    2. Thanks Robert for your valuable feedback! Appreciated. I have updated the sheet

      Delete