Spring Cloud Netflix


Spring Cloud Netflix provides Netflix OSS integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms. With a few simple annotations you can quickly enable and configure the common patterns inside your application and build large distributed systems with battle-tested Netflix components. The patterns provided include Service Discovery (Eureka), Circuit Breaker (Hystrix), Intelligent Routing (Zuul) and Client Side Load Balancing (Ribbon)..


Spring Cloud Netflix features:

  • Service Discovery: Eureka instances can be registered and clients can discover the instances using Spring-managed beans

  • Service Discovery: an embedded Eureka server can be created with declarative Java configuration

  • Circuit Breaker: Hystrix clients can be built with a simple annotation-driven method decorator

  • Circuit Breaker: embedded Hystrix dashboard with declarative Java configuration

  • Declarative REST Client: Feign creates a dynamic implementation of an interface decorated with JAX-RS or Spring MVC annotations

  • Client Side Load Balancer: Ribbon

  • External Configuration: a bridge from the Spring Environment to Archaius (enables native configuration of Netflix components using Spring Boot conventions)

  • Router and Filter: automatic registration of Zuul filters, and a simple convention over configuration approach to reverse proxy creation

Getting Started

As long as Spring Cloud Netflix and Eureka Core are on the classpath any Spring Boot application with @EnableEurekaClient will try to contact a Eureka server on http://localhost:8761 (the default value of eureka.client.serviceUrl.defaultZone):

public class Application {

  public String home() {
    return "Hello World";

  public static void main(String[] args) {, args);


To run your own server use the spring-cloud-starter-netflix-eureka-server dependency and @EnableEurekaServer.

Spring Boot Config

Unresolved directive in <stdin> - include::_attributes.adoc[]

Spring Initializr

Quickstart Your Project

Bootstrap your application with Spring Initializr.


Each Spring project has its own; it explains in great details how you can use project features and what you can achieve with them.
3.0.0 CURRENT GA Reference Doc. API Doc.
3.0.1-SNAPSHOT SNAPSHOT Reference Doc. API Doc.
2.2.6.RELEASE GA Reference Doc. API Doc.
2.1.5.RELEASE GA Reference Doc. API Doc.