Overview page with links to other microservices - spring

I have faced with a problem of creating overview page in gateway service with links to documentations of all other microservices using Spring Rest Docs. I have microservice architecture, so gateway service and other service are different projects.
Gateway service just have only RouteLocator and CORS configurations. From Spring Rest Docs I have understand that I can attach only to spring application context only if I'm using #component or #service.
How to make an overview page with links on all documented microservices in gateway service?

Related

Adding swagger UI for spring cloud gateway service

I need help in adding swagger ui for my spring cloud gateway microservice.
My spring cloud gateway service is routing the request to another microservice which already has swagger ui enabled since it has a controller layer
But since my spring cloud gateway service doesn't have any #Controller class and all the routes are defined in a RouteConfig class which doesn't do much except routing the request to actual service

corrulation between microservice apps?

I am writing a microservice app by spring boot and spring cloud. I have five modules which are
API-Gateway (base on spring cloud gateway spect)
Discovery-Server (base on spring cloud Netflix Eureka service discovery)
Microservice-A (It is a spring boot app that includes our business)
Microservice-B (It is a spring boot app that includes our business)
Microservice-C (It is a spring boot app that includes our business)
All requests which come from users route to API gateway and through API gateway send to app A or B or C (these are not exposed out). Now I have a question, base on one business role, app A will need to call one rest endpoint of app B. Which approach is the best? I call app B endpoint from app A directly or I call by API-Gateway?
The API Gateway should serve as an ingress layer, it only accepts traffic which is coming from outside of your application (clients / external integrations). More details here.
Any internal communication between your microservices, should be a point-to-point interaction, that can be done in multiple ways. This answer describes that in more details.
So the API Gateway should not be concerned with orchestration of the microservices.
If I were you I'll use a message broker for microservices communication. Let the api gateway for external clients. I think we overuse the http protocol. With a microservice architecture we should try to think differently.

How can i implement API gateway in micro services

I have developed my microservices in springboot, want to implement API gateway in it.
My frontend is Angular.
Read in detail from here:
https://spring.io/guides/gs/gateway/
(All about how to create and config gateway in spring-boot.)

load balancer and Circuit Breaker

I search to use spring boot, spring-cloud-gateway, netflix eureka.
Is there anything to do to have a load balancer and circuit breaker for micro-service instance?
I found few information ex ribbon when spring gateway is used instead of zuul.
Actually I have an application for the gateway, another for eureka, another for thymeleaf client
security is not yet choose, probabley jwt
With Spring Cloud Gateway, you can currently use the Hystrix Gateway Filter.
Consider using Hystrix. It is extremely good for microservices and aligns well with Spring cloud stack. Also, take a look at Feign, due to its simplistic approach to communication between microservices and integration with hystrix and ribbon.

spring rest web service official documentation

Can any one navigate me to official documentation of spring rest web service. I google with multiple keywords but all i got is spring rest doc which is for web service documentation or spring soap web service doc soap web service doc which is soap web service.
getting started guide of spring rest web service is here, i need full documentation of this guide.
This is the official tutorial on how to build REST web service with Spring.
For extensive guides on the topic, I suggest you start here and use the Spring reference documentation to gain knowledge on anything unfamiliar in the linked tutorial series.

Resources