Search code examples
jhipstermicroservicesjhipster-registry

How work Jhipster microservices?


I try to understand the jhispter microservices architecture. This image is present in Jhipster web site. I have some questions :

  1. Is there the gateway mandatory ? What if I don't use one ( except linking the microservices to know each other). I know it add hard coupling.

  2. Why do we need Eureka Config in Jhipster registry ? Jhipster registry does not the same thing that Eureka Server ? The aim of Jhipster Registry is to register microservices while starting.

Thanks enter image description here


Solution

    1. JHipster gateways have several features which aim to protect your services and ensure scalability:
      • Authenticating users and generate tokens that are passed to underlying services to provide them with user identity and granted roles
      • Routing and load balancing requests to services using Zuul proxy and Ribbon. Hystrix helps also by enabling retries and timeouts. This is crucial when you want to scale by having several instances of same service.
      • Rate limiting
      • Serving Angular or React application bundles.
    2. JHipster registry is an Eureka server (service discovery) and a Spring Cloud Config server to centralize service configuration, its dashboard offers also more features than Spring Cloud Eureka dashboard. JHipster registry can be replaced by Hashicorp Consul as shown on the diagram.