Navigation Guide: Previous Repo: OAuth2-Service
| Next Repo: SignUp-Service
To deploy this project to Heroku, update the configuration file
to point to the Heroku locations of the dependent services before deploying this to Heroku.
Required
git clone https://github.com/Prempeh-Gyan/1.4-Gateway-Service.git
This Gateway-Service uses the Netflix Zuul project to provide service routing capabilities for all the microservices in the Bootiful Microservices
.
This means that, the Gateway-Service proxies service requests coming from the "outside world" to any of the Bootiful Microservices
.
With this Gateway-Service, it is ensured that all calls to any of the microservices go through a single "front door"(this Gateway-Service) before the actual targeted service is invoked.
With this architecture, it is very easy to address cross-cutting concerns such as security and logging among others by just using the Gateway-Service as a centralized Policy Enforcement Point(PEP).
This Service also integrates with Kafka to send messages to other microservices when certain events occur.
- Set up and run
kafka
then update theconfiguration file
to point to it - Run the
Config-Service
to serve the property file for this Gateway-Service - The Gateway-Service needs the
Discovery-Service
to know the locations of all the other microservices in order to route incoming service requests to intended targeted services - Some resources in the Gateway-Service are protected with Oauth2 security, hence the
OAuth2-Service
needs to be set up as well.