. ├── LICENSE ├── README.md ├── ch10-1 │   ├── ch10-1-common │   ├── ch10-1-config-server │   ├── ch10-1-data-service │   ├── ch10-1-eureka-server │   ├── ch10-1-hystrix-dashboard │   ├── ch10-1-user-service │   ├── ch10-1-zuul-server │   ├── ch10-1.iml │   └── pom.xml ├── ch11-1 │   ├── ch11-1-config-client │   ├── ch11-1-config-server │   ├── ch11-1.iml │   ├── pom.xml │   └── reademe.txt ├── ch11-2 │   ├── ch11-2-config-client-refresh │   ├── ch11-2-config-server │   ├── ch11-2.iml │   └── pom.xml ├── ch11-3 │   ├── ch11-3-config-client-bus-refresh │   ├── ch11-3-config-client-bus-refresh-second │   ├── ch11-3-config-server-bus │   ├── ch11-3.iml │   └── pom.xml ├── ch12-1 │   ├── ch12-1-config-client-placeholders │   ├── ch12-1-config-server-placeholders │   ├── ch12-1.iml │   └── pom.xml ├── ch12-10 │   ├── ch12-10-config-client-apollo │   ├── ch12-10-config-client-apollo2 │   ├── ch12-10-eureka-server │   ├── ch12-10-gateway-zuul-apollo │   ├── ch12-10.iml │   └── pom.xml ├── ch12-2 │   ├── ch12-2-config-client-multiple-repositories │   ├── ch12-2-config-server-multiple-repositories │   ├── ch12-2.iml │   └── pom.xml ├── ch12-3 │   ├── ch12-3-config-client-db │   ├── ch12-3-config-server-db │   ├── ch12-3.iml │   └── pom.xml ├── ch12-4 │   ├── ch12-4-config-client-mongodb │   ├── ch12-4-config-server-mongodb │   ├── ch12-4.iml │   └── pom.xml ├── ch12-5 │   ├── ch12-5-config-client-auto-refresh │   ├── ch12-5-config-client-refresh-autoconfig │   ├── ch12-5-config-server │   ├── ch12-5.iml │   └── pom.xml ├── ch12-6 │   ├── ch12-6-config-client-fallback │   ├── ch12-6-config-client-fallback-autoconfig │   ├── ch12-6-config-server │   ├── ch12-6.iml │   └── pom.xml ├── ch12-7 │   ├── ch12-7-config-client-auth-jwt │   ├── ch12-7-config-client-jwt │   ├── ch12-7-config-server-auth-jwt │   ├── ch12-7.iml │   └── pom.xml ├── ch12-8 │   ├── ch12-8-config-client-high-availability │   ├── ch12-8-config-client-high-availability-autoconfig │   ├── ch12-8-config-server │   ├── ch12-8.iml │   └── pom.xml ├── ch12-9 │   ├── ch12-9-config-client │   ├── ch12-9-config-server-high-availability │   ├── ch12-9-eureka-server │   ├── ch12-9.iml │   └── pom.xml ├── ch13-1 │   ├── README.md │   ├── ch13-1-consul-config │   ├── ch13-1-consul-consumer │   ├── ch13-1-consul-provider │   ├── ch13-1.iml │   └── pom.xml ├── ch14-1 │   ├── README.md │   ├── ch14-1-consul-register │   ├── ch14-1.iml │   └── pom.xml ├── ch14-2 │   ├── ch14-2-consul-consumer-discoveryclient │   ├── ch14-2-consul-consumer-ribbon │   ├── ch14-2-consul-provider-tag-1 │   ├── ch14-2-consul-provider-tag-2 │   ├── ch14-2-cosul-provider-tag-1 │   ├── ch14-2.iml │   └── pom.xml ├── ch14-3 │   ├── ch14-3-consul-config-customize │   ├── ch14-3.iml │   └── pom.xml ├── ch14-4 │   ├── ch14-4-consul-override-consumer │   ├── ch14-4-consul-override-provider-tag1 │   ├── ch14-4-consul-override-provider-tag2 │   ├── ch14-4.iml │   └── pom.xml ├── ch14-5 │   ├── ch14-5-consul-override-consumer │   ├── ch14-5-consul-override-consumer-new │   ├── ch14-5-consul-provider1 │   ├── ch14-5-consul-provider2 │   ├── ch14-5.iml │   └── pom.xml ├── ch15-1 │   ├── ch15-1-client-service │   ├── ch15-1-core-service │   ├── ch15-1-eureka-service │   ├── ch15-1-gateway │   ├── ch15-1-provider-service │   ├── ch15-1.iml │   └── pom.xml ├── ch16-1 │   ├── ch16-1-sleuth-consumer │   ├── ch16-1-sleuth-provider │   ├── ch16-1.iml │   └── pom.xml ├── ch16-2 │   ├── ch16-2-sleuth-consumer │   ├── ch16-2-sleuth-provider │   ├── ch16-2.iml │   └── pom.xml ├── ch16-3 │   ├── ch16-3-eureka-server-skywalking │   ├── ch16-3-script │   ├── ch16-3-service-a │   ├── ch16-3-service-b │   ├── ch16-3-zuul-skywalking │   ├── ch16-3.iml │   └── pom.xml ├── ch17-1 │   ├── ch17-1-1-gateway │   ├── ch17-1-2-gateway │   ├── ch17-1.iml │   └── pom.xml ├── ch17-2 │   ├── ch17-2-1-gateway │   ├── ch17-2-2-gateway │   ├── ch17-2-3-gateway │   ├── ch17-2-4-gateway │   ├── ch17-2-5-gateway │   ├── ch17-2-6-gateway │   ├── ch17-2-7-gateway │   ├── ch17-2-8-gateway │   ├── ch17-2-9-gateway │   ├── ch17-2-service │   ├── ch17-2.iml │   └── pom.xml ├── ch17-3 │   ├── ch17-3-1-gateway │   ├── ch17-3-2-gateway │   ├── ch17-3-3-gateway │   ├── ch17-3-4-gateway │   ├── ch17-3-5-gateway │   ├── ch17-3-6-gateway │   ├── ch17-3-7-gateway │   ├── ch17-3-service │   ├── ch17-3.iml │   └── pom.xml ├── ch18-1 │   ├── ch18-1-consumer │   ├── ch18-1-eureka │   ├── ch18-1-gateway │   ├── ch18-1-provider │   ├── ch18-1.iml │   └── pom.xml ├── ch18-2 │   ├── ch18-2-gateway │   ├── ch18-2-provider │   ├── ch18-2.iml │   ├── pom.xml │   └── reademe.txt ├── ch18-3 │   ├── ch18-3-gateway │   ├── ch18-3-provider │   ├── ch18-3.iml │   └── pom.xml ├── ch18-4 │   ├── ch18-4-eureka │   ├── ch18-4-gateway-https │   ├── ch18-4-service-a │   ├── ch18-4-service-b │   ├── ch18-4.iml │   ├── pom.xml │   └── reademe.md ├── ch18-5 │   ├── ch18-5-eureka │   ├── ch18-5-gateway │   ├── ch18-5-service │   ├── ch18-5.iml │   └── pom.xml ├── ch18-6 │   ├── ch18-6-1-gateway │   ├── ch18-6-2-gateway │   ├── ch18-6-3-gateway │   ├── ch18-6-provider │   ├── ch18-6.iml │   └── pom.xml ├── ch18-7 │   ├── ch18-7-gateway │   ├── ch18-7.iml │   ├── pom.xml │   └── readme.md ├── ch19-1 │   ├── ch19-1.iml │   ├── pom.xml │   └── src ├── ch19-2 │   ├── ch19-2.iml │   ├── grpc-lib-1 │   ├── grpc-simple-client │   ├── grpc-simple-server │   └── pom.xml ├── ch2-1 │   ├── ch2-1-eureka-client │   ├── ch2-1-eureka-server │   ├── ch2-1.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch20 │   ├── ch20.iml │   ├── cloud-eureka-server │   ├── cloud-grpc-client │   ├── cloud-grpc-server │   ├── grpc-lib │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch21-1 │   ├── ch21-1-discovery-console │   ├── ch21-1-eureka-server │   ├── ch21-1-original-service │   ├── ch21-1-zuul-server │   ├── ch21-1.iml │   └── pom.xml ├── ch22-1 │   ├── ch22-1-2-dockerfile │   ├── ch22-1-3-jdk8-docker │   ├── ch22-1-4-jdk10-docker │   ├── ch22-1.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch22-2 │   ├── ch22-2-1-config-server │   ├── ch22-2-2-eureka-server │   ├── ch22-2-3-gateway │   ├── ch22-2-4-turbine │   ├── ch22-2-5-spring-admin │   ├── ch22-2-6-biz-service │   ├── ch22-2.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch22-3 │   ├── ch22-3-1 │   ├── ch22-3-2-example-service │   ├── ch22-3-3-example-service │   ├── ch22-3.iml │   ├── metrics-server-0.2.1 │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch23-1 │   ├── ch23-1.iml │   ├── demo-consumer │   ├── demo-provider │   ├── dubbo-provider-api │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch23-2 │   ├── ch23-2.iml │   ├── demo-dubbo-consumer │   ├── demo-dubbo-provider │   ├── demo-dubbo-provider-api │   ├── eureka-server │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch24 │   ├── ch24-jta-atomikos │   ├── ch24-saga-servicecomb │   ├── ch24-tcc-rest │   ├── ch24.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch25 │   ├── LICENSE │   ├── README.md │   ├── ch25.iml │   ├── crm-sales-app │   ├── crm-sales-client │   ├── crm-sales-consumer │   ├── crm-sales-domain │   ├── crm-sales-infrastructure │   ├── crm-sales-start │   ├── pom.xml │   └── tree.md ├── ch3-1 │   ├── ch3-1-config-server │   ├── ch3-1-eureka-client │   ├── ch3-1-eureka-server │   ├── ch3-1.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch3-2 │   ├── ch3-2-eureka-client │   ├── ch3-2-eureka-server │   ├── ch3-2-zuul-gateway │   ├── ch3-2.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch3-3 │   ├── ch3-3-eureka-client │   ├── ch3-3-eureka-server │   ├── ch3-3-zuul-gateway │   ├── ch3-3.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch3-4 │   ├── ch3-4-eureka-client │   ├── ch3-4-eureka-server │   ├── ch3-4.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch3-5 │   ├── ch3-5-eureka-client │   ├── ch3-5-eureka-server │   ├── ch3-5.iml │   ├── mvnw │   ├── mvnw.cmd │   └── pom.xml ├── ch4-1 │   ├── ch4-1-gzip │   ├── ch4-1-hello │   ├── ch4-1.iml │   ├── pom.xml │   └── readme.md ├── ch4-2 │   ├── ch4-2-consumer │   ├── ch4-2-eureka-server │   ├── ch4-2-provider │   ├── ch4-2.iml │   ├── pom.xml │   └── readme.md ├── ch4-3 │   ├── ch4-3-httpclient │   ├── ch4-3-okhttp │   ├── ch4-3.iml │   ├── pom.xml │   └── readme.md ├── ch4-4 │   ├── ch4-4-eureka-server │   ├── ch4-4-feign-file-server │   ├── ch4-4-feign-upload-client │   ├── ch4-4.iml │   ├── pom.xml │   └── readme.md ├── ch4-5 │   ├── ch4-5-consumer │   ├── ch4-5-eureka-server │   ├── ch4-5-provider │   ├── ch4-5.iml │   ├── pom.xml │   └── readme.md ├── ch4-6 │   ├── ch4-6-consumer │   ├── ch4-6-eureka-server │   ├── ch4-6-provider │   ├── ch4-6-provider-client │   ├── ch4-6.iml │   ├── pom.xml │   └── readme.md ├── ch5-1 │   ├── ch5-1-client-a │   ├── ch5-1-eureka-server │   ├── ch5-1-ribbon-loadbalancer │   ├── ch5-1.iml │   └── pom.xml ├── ch5-2 │   ├── ch5-2-client-a │   ├── ch5-2-eureka-server │   ├── ch5-2-ribbon-loadbalancer │   ├── ch5-2.iml │   └── pom.xml ├── ch6-1 │   ├── ch6-1-client-service │   ├── ch6-1-eureka-server │   ├── ch6-1.iml │   └── pom.xml ├── ch6-2 │   ├── ch6-2-consumer-service │   ├── ch6-2-eureka-server │   ├── ch6-2-provider-service │   ├── ch6-2.iml │   └── pom.xml ├── ch6-3 │   ├── ch6-3-eureka-server │   ├── ch6-3-hello-service │   ├── ch6-3-hystrix-dashboard │   ├── ch6-3-hystrix-exception-service │   ├── ch6-3-provider-service │   ├── ch6-3-turbine │   ├── ch6-3.iml │   └── pom.xml ├── ch6-4 │   ├── ch6-4-collapsing │   ├── ch6-4-eureka-server │   ├── ch6-4-hystrix-cache │   ├── ch6-4-hystrix-thread-context │   ├── ch6-4-provider-service │   ├── ch6-4.iml │   └── pom.xml ├── ch7-1 │   ├── ch7-1-client-a │   ├── ch7-1-eureka-server │   ├── ch7-1-zuul-server │   ├── ch7-1.iml │   ├── pom.xml │   └── reademe.txt ├── ch7-2 │   ├── ch7-2-client-a │   ├── ch7-2-eureka-server │   ├── ch7-2-zuul-server │   ├── ch7-2.iml │   └── pom.xml ├── ch7-3 │   ├── ch7-3-client-a │   ├── ch7-3-client-b │   ├── ch7-3-eureka-server │   ├── ch7-3-zuul-server │   ├── ch7-3.iml │   └── pom.xml ├── ch8-1 │   ├── ch8-1-client-a │   ├── ch8-1-eureka-server │   ├── ch8-1-zuul-server │   ├── ch8-1.iml │   └── pom.xml ├── ch8-2 │   ├── ch8-2-auth-server │   ├── ch8-2-client-a │   ├── ch8-2-eureka-server │   ├── ch8-2-zuul-server │   ├── ch8-2.iml │   └── pom.xml ├── ch8-3 │   ├── ch8-3-client-a │   ├── ch8-3-eureka-server │   ├── ch8-3-zuul-server │   ├── ch8-3.iml │   └── pom.xml ├── ch8-4 │   ├── ch8-4-client-a │   ├── ch8-4-eureka-server │   ├── ch8-4-zuul-server │   ├── ch8-4.iml │   ├── mysql.sql │   └── pom.xml ├── ch8-5 │   ├── ch8-5-client-a │   ├── ch8-5-eureka-server │   ├── ch8-5-zuul-server │   ├── ch8-5.iml │   └── pom.xml ├── ch8-6 │   ├── ch8-6-eureka-server │   ├── ch8-6-zuul-server │   ├── ch8-6.iml │   └── pom.xml ├── ch8-7 │   ├── ch8-7-client-a │   ├── ch8-7-eureka-server │   ├── ch8-7-zuul-server │   ├── ch8-7.iml │   └── pom.xml ├── pom.xml └── tree.txt 311 directories, 193 files