Spring Cloud Netflix


Table of Contents

1. Service Discovery: Eureka Clients
1.1. How to Include Eureka Client
1.2. Registering with Eureka
1.3. Authenticating with the Eureka Server
1.4. Status Page and Health Indicator
1.5. Registering a Secure Application
1.6. Eureka’s Health Checks
1.7. Eureka Metadata for Instances and Clients
1.7.1. Using Eureka on Cloud Foundry
1.7.2. Using Eureka on AWS
1.7.3. Changing the Eureka Instance ID
1.8. Using the EurekaClient
1.8.1. EurekaClient without Jersey
1.9. Alternatives to the native Netflix EurekaClient
1.10. Why is it so Slow to Register a Service?
1.11. Zones
2. Service Discovery: Eureka Server
2.1. How to Include Eureka Server
2.2. How to Run a Eureka Server
2.3. High Availability, Zones and Regions
2.4. Standalone Mode
2.5. Peer Awareness
2.6. Prefer IP Address
3. Circuit Breaker: Hystrix Clients
3.1. How to Include Hystrix
3.2. Propagating the Security Context or using Spring Scopes
3.3. Health Indicator
3.4. Hystrix Metrics Stream
4. Circuit Breaker: Hystrix Dashboard
5. Hystrix Timeouts And Ribbon Clients
5.1. How to Include Hystrix Dashboard
5.2. Turbine
5.3. Turbine Stream
6. Client Side Load Balancer: Ribbon
6.1. How to Include Ribbon
6.2. Customizing the Ribbon Client
6.3. Customizing default for all Ribbon Clients
6.4. Customizing the Ribbon Client using properties
6.5. Using Ribbon with Eureka
6.6. Example: How to Use Ribbon Without Eureka
6.7. Example: Disable Eureka use in Ribbon
6.8. Using the Ribbon API Directly
6.9. Caching of Ribbon Configuration
6.10. How to Configure Hystrix thread pools
6.11. How to Provide a Key to Ribbon’s IRule
7. Declarative REST Client: Feign
7.1. How to Include Feign
7.2. Overriding Feign Defaults
7.3. Creating Feign Clients Manually
7.4. Feign Hystrix Support
7.5. Feign Hystrix Fallbacks
7.6. Feign and @Primary
7.7. Feign Inheritance Support
7.8. Feign request/response compression
7.9. Feign logging
8. External Configuration: Archaius
9. Router and Filter: Zuul
9.1. How to Include Zuul
9.2. Embedded Zuul Reverse Proxy
9.3. Zuul Http Client
9.4. Cookies and Sensitive Headers
9.5. Ignored Headers
9.6. Management Endpoints
9.6.1. Routes Endpoint
9.6.2. Filters Endpoint
9.7. Strangulation Patterns and Local Forwards
9.8. Uploading Files through Zuul
9.9. Query String Encoding
9.10. Plain Embedded Zuul
9.11. Disable Zuul Filters
9.12. Providing Hystrix Fallbacks For Routes
9.13. Zuul Timeouts
9.13.1. Service Discovery Configuration
9.13.2. URL Configuration
9.14. Rewriting Location header
9.15. Zuul Developer Guide
9.15.1. The Zuul Servlet
9.15.2. Zuul RequestContext
9.15.3. @EnableZuulProxy vs. @EnableZuulServer
9.15.4. @EnableZuulServer Filters
9.15.5. @EnableZuulProxy Filters
9.15.6. Custom Zuul Filter examples
9.15.7. How to Write a Pre Filter
9.15.8. How to Write a Route Filter
9.15.9. How to Write a Post Filter
9.15.10. How Zuul Errors Work
9.15.11. Zuul Eager Application Context Loading
10. Polyglot support with Sidecar
11. RxJava with Spring MVC
12. Metrics: Spectator, Servo, and Atlas
12.1. Dimensional vs. Hierarchical Metrics
12.2. Default Metrics Collection
12.3. Metrics Collection: Spectator
12.3.1. Spectator Counter
12.3.2. Spectator Timer
12.3.3. Spectator Gauge
12.3.4. Spectator Distribution Summaries
12.4. Metrics Collection: Servo
12.4.1. Creating Servo Monitors
12.5. Metrics Backend: Atlas
12.5.1. Global tags
12.5.2. Using Atlas
12.6. Retrying Failed Requests
12.6.1. BackOff Policies
12.6.2. Configuration
12.6.3. Zuul
13. HTTP Clients