# ityouknow/spring-cloud-examples

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/ityouknow-spring-cloud-examples).**

6,196 stars · 3,050 forks · Java

## Links

- GitHub: https://github.com/ityouknow/spring-cloud-examples
- Homepage: http://www.ityouknow.com/spring-cloud.html
- awesome-repositories: https://awesome-repositories.com/repository/ityouknow-spring-cloud-examples.md

## Topics

`eureka` `hystrix` `hystrix-dashboard-turbine` `refresh` `spring-boot` `spring-cloud` `spring-cloud-demo` `spring-cloud-examples` `springboot` `springclond` `springcloud` `turbine` `zuul`

## Description

This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building microservice architectures. The repository covers the fundamental building blocks of a microservices system, including service discovery through a central registry, centralized configuration management from Git or SVN repositories, API gateway-based request routing, circuit breaker patterns for fault tolerance, and distributed request tracing across service boundaries.

The examples show how to implement service registration and dynamic discovery so that clients can locate microservices by logical name without hardcoded addresses. They demonstrate routing external requests through a single gateway entry point that can apply authentication, rate limiting, and path rewriting before forwarding to internal services. The collection also covers configuration management that allows pushing updates to running services without restart, and circuit breaker monitoring that aggregates real-time metrics from all protected service calls into a unified dashboard.

Additional capabilities include asynchronous message processing with RabbitMQ, health metric aggregation across a cluster, retry logic for failed service calls, and rate limiting per route. The examples also explore alternative service registries like Consul and demonstrate deployment automation with Jenkins and Docker.

## Tags

### Software Engineering & Architecture

- [Microservice Demonstrations](https://awesome-repositories.com/f/software-engineering-architecture/spring-boot-integrations/microservice-demonstrations.md) — A learning collection of example projects demonstrating Spring Cloud patterns for microservices.
- [Cascading Failure Preventions](https://awesome-repositories.com/f/software-engineering-architecture/cascading-failure-preventions.md) — Monitors calls to a remote service and stops sending requests when failures exceed a threshold. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Circuit Breakers](https://awesome-repositories.com/f/software-engineering-architecture/circuit-breakers.md) — Demonstrates the circuit breaker pattern with Hystrix to prevent cascading failures in microservice calls.
- [Centralized Configuration Stores](https://awesome-repositories.com/f/software-engineering-architecture/distributed-systems/distributed-data-management/distributed-key-value-stores/centralized-configuration-stores.md) — Provides a centralized configuration server that distributes settings to all microservices without redeployment. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Service Discovery Registries](https://awesome-repositories.com/f/software-engineering-architecture/service-discovery-registries.md) — Demonstrates registering and locating microservices via a central registry like Eureka. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Dynamic Service Registrations](https://awesome-repositories.com/f/software-engineering-architecture/service-locators/dynamic-service-registrations.md) — Locates microservices dynamically through the Eureka registry so clients call them without hardcoded addresses. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Decoupled Message Delivery](https://awesome-repositories.com/f/software-engineering-architecture/decoupled-message-delivery.md) — Demonstrates asynchronous message processing with RabbitMQ to decouple microservice producers and consumers.

### Development Tools & Productivity

- [Git-Backed Application Configurations](https://awesome-repositories.com/f/development-tools-productivity/git-configuration/git-backed-application-configurations.md) — Demonstrates serving microservice configuration from a Git repository with versioning support. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [SVN-Backed Application Configurations](https://awesome-repositories.com/f/development-tools-productivity/repository-configuration/svn-backed-application-configurations.md) — Demonstrates serving microservice configuration from an SVN repository with runtime refresh. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [SVN-Backed Configurations](https://awesome-repositories.com/f/development-tools-productivity/service-configuration-management/svn-backed-configurations.md) — Demonstrates serving microservice configuration from an SVN repository with runtime refresh. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))

### DevOps & Infrastructure

- [API Gateways](https://awesome-repositories.com/f/devops-infrastructure/api-service-management/microservice-infrastructure/service-mesh-components/spring-cloud-implementations/api-gateways.md) — Demonstrates routing external requests through a Spring Cloud API Gateway with authentication and rate limiting.
- [Configuration Management](https://awesome-repositories.com/f/devops-infrastructure/api-service-management/microservice-infrastructure/service-mesh-components/spring-cloud-implementations/configuration-management.md) — Demonstrates centralized configuration management from Git/SVN repositories with runtime refresh.
- [Centralized Configuration Management](https://awesome-repositories.com/f/devops-infrastructure/centralized-configuration-management.md) — Provides a centralized configuration server that stores and serves settings to all microservices. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Service Discovery Clients](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure/cloud-computing-serverless/backend-as-a-service/authentication-as-a-service/service-discovery-clients.md) — Looks up services by logical name from a registry and routes requests to available instances. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Service Instance Registrations](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure/cloud-computing-serverless/backend-as-a-service/authentication-as-a-service/service-instance-registrations.md) — Demonstrates registering microservice instances with a service registry for discovery. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Microservice Configuration Stores](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/application-settings-management/application-module-configuration/module-configuration-stores/microservice-configuration-stores.md) — Provides a centralized configuration server that serves settings from Git or SVN to all microservices.
- [Circuit Breaker](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/operational-observability-access/service-health-monitoring/metric-aggregations/circuit-breaker.md) — Collects and aggregates Hystrix circuit-breaker metrics from multiple services into a single dashboard view. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Circuit Breaking](https://awesome-repositories.com/f/devops-infrastructure/rate-limiting/circuit-breaking.md) — Monitors calls to downstream services and stops sending requests when failures exceed a threshold. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Live Configuration Reloads](https://awesome-repositories.com/f/devops-infrastructure/restart-automation/file-change-triggered-restarts/secret-change-triggered-restarts/configuration-triggered-restarts/live-configuration-reloads.md) — Pushes updated configuration to running services so they pick up changes without a full redeploy. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Centralized Configuration Storage](https://awesome-repositories.com/f/devops-infrastructure/storage-configurations/centralized-configuration-storage.md) — Stores and serves configuration files from a central Spring Cloud Config Server, enabling updates without restarting services. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Git-Backed Configuration Stores](https://awesome-repositories.com/f/devops-infrastructure/storage-configurations/centralized-configuration-storage/git-backed-configuration-stores.md) — Serves application configuration from a Git repository, enabling versioned settings and runtime refresh without restarting services. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [SVN-Backed Configurations](https://awesome-repositories.com/f/devops-infrastructure/storage-configurations/centralized-configuration-storage/svn-backed-configurations.md) — Demonstrates serving microservice configuration from an SVN repository with runtime refresh. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Request Retries](https://awesome-repositories.com/f/devops-infrastructure/api-service-management/api-resilience/request-retries.md) — Implements automatic retry of failed service calls to improve reliability. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Automatic Retry Clients](https://awesome-repositories.com/f/devops-infrastructure/api-service-management/api-resilience/request-retries/automatic-retry-clients.md) — Automatically reattempts requests to downstream services after transient failures. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Route-Based Rate Limiting](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/networking/routing/rate-limiters/route-based-rate-limiting.md) — Demonstrates rate limiting per route in the API gateway to protect backend services. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Metric Aggregations](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/operational-observability-access/service-health-monitoring/metric-aggregations.md) — Aggregates health metrics from all registered services into a unified admin dashboard for cluster monitoring.
- [Gateway Filters](https://awesome-repositories.com/f/devops-infrastructure/request-gateways/gateway-filters.md) — Applies gateway filters for authentication, rate limiting, and header manipulation on incoming requests. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Request Rate Limiting](https://awesome-repositories.com/f/devops-infrastructure/request-rate-limiting.md) — Implements rate limiting to protect backend services from overload. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Gateway Rate Limiters](https://awesome-repositories.com/f/devops-infrastructure/request-rate-limiting/gateway-rate-limiters.md) — Demonstrates rate limiting at the API gateway to protect downstream services. ([source](http://www.ityouknow.com/spring-cloud.html))

### Mobile Development

- [Service Registries](https://awesome-repositories.com/f/mobile-development/mobile-capabilities/location-services/service-registries.md) — Register and locate microservices dynamically so clients call services without hardcoding network addresses. ([source](http://www.ityouknow.com/spring-cloud.html))

### Networking & Communication

- [Registry-Based Service Discovery](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-systems-coordination/service-discovery-mechanisms/registry-based-service-discovery.md) — Registers each microservice instance with Eureka so clients discover them by logical name without hardcoded addresses.
- [Dynamic Service Discovery](https://awesome-repositories.com/f/networking-communication/dynamic-service-discovery.md) — Demonstrates dynamic service discovery so clients call services by logical name.
- [Spring Cloud Service Registries](https://awesome-repositories.com/f/networking-communication/dynamic-service-discovery/spring-cloud-service-registries.md) — Registering and locating microservices dynamically so clients call services by logical name without hardcoded network addresses.
- [Configuration Change Broadcasting](https://awesome-repositories.com/f/networking-communication/message-bus-interfaces/message-bus-routing/configuration-change-broadcasting.md) — Broadcasts configuration changes to running microservices via a message bus without restart. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Gateway-Based Request Routings](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-routing-traffic-management/request-routing/internal-microservice-request-routings/gateway-based-request-routings.md) — Routes all external API requests through a Spring Cloud Gateway that applies authentication, rate limiting, and path rewriting.
- [Gateway Routing](https://awesome-repositories.com/f/networking-communication/traffic-routing/node-aware-routing/gateway-routing.md) — Routes external requests through a single gateway entry point with authentication and rate limiting.
- [RabbitMQ Integrations](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/messaging-notification-systems/messaging-services/rabbitmq-integrations.md) — Exchanges messages between producers and consumers asynchronously using RabbitMQ. ([source](http://www.ityouknow.com/))
- [Consul Service Discovery](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-systems-coordination/service-discovery-mechanisms/consul-service-discovery.md) — Shows using Consul as an alternative service registry with health checking. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))

### Security & Cryptography

- [Request Authentication Filters](https://awesome-repositories.com/f/security-cryptography/user-access-management/user-access-revocation/user-access-filtering/request-authentication-filters.md) — Inspects incoming requests in a gateway to enforce authentication, rate limiting, or other policies. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))

### System Administration & Monitoring

- [Admin Dashboards](https://awesome-repositories.com/f/system-administration-monitoring/cluster-health-monitoring/admin-dashboards.md) — Provides a web dashboard that shows the health and metrics of all registered Spring Boot applications. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Distributed Request Tracking](https://awesome-repositories.com/f/system-administration-monitoring/distributed-request-tracking.md) — Tracks the full lifecycle and hierarchy of network requests across multiple services. ([source](http://www.ityouknow.com/spring-cloud.html))
- [End-to-End Message Tracing](https://awesome-repositories.com/f/system-administration-monitoring/end-to-end-message-tracing.md) — Tracks the full lifecycle of a message across a distributed system to identify performance bottlenecks. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Microservices Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/health-monitoring/instance-health-monitors/microservices-health-monitoring.md) — Tracks the operational status of microservice instances using heartbeats and registry probes. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Cluster Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/cluster-health-monitoring.md) — Aggregates health and status information from all services in a cluster and presents it in a unified dashboard. ([source](https://cdn.jsdelivr.net/gh/ityouknow/spring-cloud-examples@master/README.md))
- [Observability Data Aggregators](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/cross-account-observability-aggregators/observability-data-filters/observability-data-aggregators.md) — Collects and displays metrics from multiple services in a single dashboard for a unified view of system health. ([source](http://www.ityouknow.com/spring-cloud.html))
- [Service Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/service-health-monitoring.md) — Aggregates health metrics from registered services and displays them in a unified admin interface.

### Testing & Quality Assurance

- [Distributed Request Tracing](https://awesome-repositories.com/f/testing-quality-assurance/api-call-loggers/distributed-request-tracing.md) — Implements distributed request tracing with Spring Cloud Sleuth to correlate requests across service boundaries.

### Web Development

- [Path Prefix Stripping](https://awesome-repositories.com/f/web-development/request-routing/path-prefix-matching/path-prefix-stripping.md) — Strips a configurable path prefix from incoming requests before forwarding them to the target microservice. ([source](http://www.ityouknow.com/spring-cloud.html))
