Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/piomin/sample-spring-cloud-gateway
sample spring cloud application with embedded api gateway on spring cloud gateway with or without service discovery with eureka
https://github.com/piomin/sample-spring-cloud-gateway
api-gateway eureka eureka-client microservices rate-limiter redis spring-cloud spring-cloud-gateway
Last synced: about 1 month ago
JSON representation
sample spring cloud application with embedded api gateway on spring cloud gateway with or without service discovery with eureka
- Host: GitHub
- URL: https://github.com/piomin/sample-spring-cloud-gateway
- Owner: piomin
- Created: 2017-12-13T11:29:10.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-10-24T16:37:07.000Z (about 2 months ago)
- Last Synced: 2024-11-09T22:03:35.044Z (about 1 month ago)
- Topics: api-gateway, eureka, eureka-client, microservices, rate-limiter, redis, spring-cloud, spring-cloud-gateway
- Language: Java
- Homepage:
- Size: 69.3 KB
- Stars: 43
- Watchers: 5
- Forks: 28
- Open Issues: 3
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Spring Cloud Gateway Advanced Demo Project [![Twitter](https://img.shields.io/twitter/follow/piotr_minkowski.svg?style=social&logo=twitter&label=Follow%20Me)](https://twitter.com/piotr_minkowski)
[![CircleCI](https://circleci.com/gh/piomin/sample-spring-cloud-gateway.svg?style=svg)](https://circleci.com/gh/piomin/sample-spring-cloud-gateway)
[![SonarCloud](https://sonarcloud.io/images/project_badges/sonarcloud-black.svg)](https://sonarcloud.io/dashboard?id=piomin_sample-spring-cloud-gateway)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=piomin_sample-spring-cloud-gateway&metric=bugs)](https://sonarcloud.io/dashboard?id=piomin_sample-spring-cloud-gateway)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=piomin_sample-spring-cloud-gateway&metric=coverage)](https://sonarcloud.io/dashboard?id=piomin_sample-spring-cloud-gateway)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=piomin_sample-spring-cloud-gateway&metric=ncloc)](https://sonarcloud.io/dashboard?id=piomin_sample-spring-cloud-gateway)
In this project I'm demonstrating you the most interesting features of [Spring Cloud Gateway](https://cloud.spring.io/spring-cloud-gateway/reference/html/)
## Getting Started
Currently you may find here examples of:
1. Redis-based **Request Rate Limiter** - the detailed description may be found in the article on my blog [Rate Limiting In Spring Cloud Gateway With Redis](https://piotrminkowski.com/2019/11/15/rate-limiting-in-spring-cloud-gateway-with-redis/)
2. Circuit Breaker and Fallback with [resilience4j](https://resilience4j.readme.io/docs/getting-started) - the detailed description may be found in the article on my blog
[Circuit Breaking In Spring Cloud Gateway With Resilience4J](https://piotrminkowski.com/2019/12/11/circuit-breaking-in-spring-cloud-gateway-with-resilience4j/)### Usage
1. To build and run the main application you need to have Maven, JDK11+ and Docker.
2. To build it run command `mvn clean install`
3. During Maven build the JUnit integration tests are running. They are using [Testcontainers](https://www.testcontainers.org/) for mocking downstream service and third-party tools like Redis.Feel free to propose your examples or suggestions !