6

Using Consul, you could allow your teams decentrally deploy and run microservices with dynamic dependencies.

It is also possible to list the services: /catalog/service/:service

Now, how to assess these dependencies automatically if the architecture grows dynamically to get a visual representation of service inter-dependencies?

Ta Mu
  • 6,792
  • 5
  • 43
  • 83

2 Answers2

3

I recommend that you take a look at the NetworkX library for Python. With a script you could query Consul and build a graph of linked nodes which could be rendered to an image file and served with a web server. A Flask microservice for this would be fairly simple to set up and provide a very useful visualization of your microservices spiderweb.

Dan Cornilescu
  • 6,780
  • 2
  • 21
  • 45
esoterydactyl
  • 421
  • 3
  • 12
0

Consul is for service location; a service can use it to find another service so long as it knows the name of the service it wants to find. Consul is not for dependency tracking, and provides no insights into what services are using what other services (in fact it cannot, because service location does not have a way to indicate what service is doing the requesting, only what service is being requested).

Adrian
  • 783
  • 4
  • 8