gitextract__j33z0th/ ├── .gitignore ├── 1-Brixton版教程示例/ │ ├── Chapter1-1-1/ │ │ ├── compute-service/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── didispace/ │ │ │ │ │ ├── ComputeServiceApplication.java │ │ │ │ │ └── web/ │ │ │ │ │ └── ComputeController.java │ │ │ │ └── resources/ │ │ │ │ └── application.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── ApplicationTests.java │ │ └── eureka-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── Chapter1-1-2/ │ │ ├── eureka-feign/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── FeignApplication.java │ │ │ │ ├── service/ │ │ │ │ │ └── ComputeClient.java │ │ │ │ └── web/ │ │ │ │ └── ConsumerController.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ └── eureka-ribbon/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── RibbonApplication.java │ │ │ └── web/ │ │ │ └── ConsumerController.java │ │ └── resources/ │ │ └── application.properties │ ├── Chapter1-1-3/ │ │ ├── compute-service/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── didispace/ │ │ │ │ │ ├── ComputeServiceApplication.java │ │ │ │ │ └── web/ │ │ │ │ │ └── ComputeController.java │ │ │ │ └── resources/ │ │ │ │ └── application.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── ApplicationTests.java │ │ ├── eureka-feign/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── FeignApplication.java │ │ │ ├── service/ │ │ │ │ ├── ComputeClient.java │ │ │ │ └── ComputeClientHystrix.java │ │ │ └── web/ │ │ │ └── ConsumerController.java │ │ ├── eureka-ribbon/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── RibbonApplication.java │ │ │ ├── service/ │ │ │ │ └── ComputeService.java │ │ │ └── web/ │ │ │ └── ConsumerController.java │ │ └── eureka-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── Chapter1-1-4/ │ │ ├── config-client/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── web/ │ │ │ │ └── TestController.java │ │ │ └── resources/ │ │ │ └── bootstrap.properties │ │ ├── config-repo/ │ │ │ ├── didispace-dev.properties │ │ │ ├── didispace-prod.properties │ │ │ ├── didispace-test.properties │ │ │ └── didispace.properties │ │ └── config-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ ├── application.properties │ │ ├── didispace-dev.properties │ │ ├── didispace-prod.properties │ │ ├── didispace-test.properties │ │ └── didispace.properties │ ├── Chapter1-1-5/ │ │ ├── api-gateway/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── filter/ │ │ │ │ └── AccessFilter.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ ├── eureka-server/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ └── Application.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ ├── service-A/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── didispace/ │ │ │ │ │ ├── ComputeServiceApplication.java │ │ │ │ │ └── web/ │ │ │ │ │ └── ComputeController.java │ │ │ │ └── resources/ │ │ │ │ └── application.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── ApplicationTests.java │ │ └── service-B/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── ComputeServiceApplication.java │ │ │ │ └── web/ │ │ │ │ └── ComputeController.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── ApplicationTests.java │ ├── Chapter1-1-6/ │ │ ├── compute-service/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── didispace/ │ │ │ │ │ ├── ComputeServiceApplication.java │ │ │ │ │ └── web/ │ │ │ │ │ └── ComputeController.java │ │ │ │ └── resources/ │ │ │ │ └── application.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── ApplicationTests.java │ │ └── eureka-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ ├── application-peer1.properties │ │ └── application-peer2.properties │ ├── Chapter1-1-7/ │ │ ├── config-client-eureka/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── web/ │ │ │ │ └── TestController.java │ │ │ └── resources/ │ │ │ └── bootstrap.properties │ │ ├── config-client-eureka-kafka/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── web/ │ │ │ │ └── TestController.java │ │ │ └── resources/ │ │ │ └── bootstrap.properties │ │ ├── config-repo/ │ │ │ ├── didispace-dev.properties │ │ │ ├── didispace-prod.properties │ │ │ ├── didispace-test.properties │ │ │ └── didispace.properties │ │ ├── config-server-eureka/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ └── Application.java │ │ │ └── resources/ │ │ │ ├── application.properties │ │ │ ├── didispace-dev.properties │ │ │ ├── didispace-prod.properties │ │ │ ├── didispace-test.properties │ │ │ └── didispace.properties │ │ └── config-server-eureka-kafka/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ ├── application.properties │ │ ├── didispace-dev.properties │ │ ├── didispace-prod.properties │ │ ├── didispace-test.properties │ │ └── didispace.properties │ ├── Chapter1-1-8/ │ │ ├── config-client-eureka/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── web/ │ │ │ │ └── TestController.java │ │ │ └── resources/ │ │ │ └── bootstrap.properties │ │ ├── config-repo/ │ │ │ ├── didispace-dev.properties │ │ │ ├── didispace-prod.properties │ │ │ ├── didispace-test.properties │ │ │ └── didispace.properties │ │ └── config-server-eureka/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ ├── application.properties │ │ ├── didispace-dev.properties │ │ ├── didispace-prod.properties │ │ ├── didispace-test.properties │ │ └── didispace.properties │ └── README.md ├── 2-Dalston版教程示例/ │ ├── README.md │ ├── api-gateway/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.yaml │ ├── api-gateway-with-eureka/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── AccessFilter.java │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.yaml │ ├── config-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── bootstrap.yml │ ├── config-server-git/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.yml │ ├── consul-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── consul-consumer/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-consumer/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-consumer-feign/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ ├── DcClient.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-consumer-feign-hystrix/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ ├── DcClient.java │ │ │ ├── DcClientFallback.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-consumer-ribbon/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-consumer-ribbon-hystrix/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── DcController.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-feign-api/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── api/ │ │ └── HelloService.java │ ├── eureka-feign-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── api/ │ │ │ └── impl/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-feign-consumer/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── api/ │ │ │ └── consumer/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-feign-upload-client/ │ │ ├── pom.xml │ │ ├── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── didispace/ │ │ │ │ │ └── api/ │ │ │ │ │ └── consumer/ │ │ │ │ │ ├── Application.java │ │ │ │ │ └── UploadService.java │ │ │ │ └── resources/ │ │ │ │ └── application.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── api/ │ │ │ └── consumer/ │ │ │ └── UploadTester.java │ │ └── upload.txt │ ├── eureka-feign-upload-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── api/ │ │ │ └── consumer/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── eureka-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ ├── application-peer1.properties │ │ ├── application-peer2.properties │ │ └── application.properties │ ├── hystrix-collapser-consumer/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ ├── Application.java │ │ │ │ └── UserService.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ └── test/ │ │ └── java/ │ │ └── CollapserTest.java │ ├── hystrix-collapser-provider/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ ├── Application.java │ │ │ └── UserController.java │ │ └── resources/ │ │ └── application.properties │ ├── hystrix-dashboard/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── HystrixDashboardApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── pom.xml │ ├── stream-consumer-group/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ └── stream/ │ │ │ │ ├── ExampleApplication.java │ │ │ │ ├── ExampleBinder.java │ │ │ │ └── ExampleReceiver.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── ExampleApplicationTests.java │ ├── stream-consumer-self/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ ├── TestApplication.java │ │ │ ├── TestController.java │ │ │ ├── TestListener.java │ │ │ └── TestTopic.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-hello/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── didispace/ │ │ │ │ └── stream/ │ │ │ │ ├── SinkApplication.java │ │ │ │ └── SinkReceiver.java │ │ │ └── resources/ │ │ │ └── application.properties │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── SinkApplicationTests.java │ ├── swagger-api-gateway/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.yaml │ ├── swagger-service-a/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── swagger-service-b/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── Application.java │ │ └── resources/ │ │ └── application.properties │ ├── trace-1/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── TraceApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── trace-2/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── TraceApplication.java │ │ └── resources/ │ │ ├── application.properties │ │ └── logback-spring.xml │ ├── turbine/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── TurbineApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── turbine-amqp/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── TurbineApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── zipkin-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── ZipkinApplication.java │ │ └── resources/ │ │ └── application.properties │ └── zipkin-server-stream/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── ZipkinApplication.java │ └── resources/ │ └── application.properties ├── 3-Edgware/ │ ├── README.md │ ├── config-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── config/ │ │ │ └── client/ │ │ │ └── ConfigClientApplication.java │ │ └── resources/ │ │ └── bootstrap.properties │ ├── config-server-db/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── config/ │ │ │ └── server/ │ │ │ └── db/ │ │ │ └── ConfigServerBootstrap.java │ │ └── resources/ │ │ ├── application.properties │ │ └── schema/ │ │ └── V1__Base_version.sql │ └── pom.xml ├── 4-Finchley/ │ ├── README.md │ ├── alibaba-dubbo-api/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── alibaba/ │ │ └── dubbo/ │ │ └── api/ │ │ └── HelloService.java │ ├── alibaba-dubbo-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── dubbo/ │ │ │ └── client/ │ │ │ └── DubboClientApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-dubbo-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── dubbo/ │ │ │ └── server/ │ │ │ ├── DubboServerApplication.java │ │ │ └── HelloServiceImpl.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-nacos-config-client/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── config/ │ │ │ └── client/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── bootstrap.properties │ ├── alibaba-nacos-discovery-client-common/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── discovery/ │ │ │ └── client/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-nacos-discovery-client-feign/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── discovery/ │ │ │ └── client/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-nacos-discovery-client-resttemplate/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── discovery/ │ │ │ └── client/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-nacos-discovery-client-webclient/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── discovery/ │ │ │ └── client/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-nacos-discovery-server/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── nacos/ │ │ │ └── discovery/ │ │ │ └── server/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-sentinel-annotation/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── sentinel/ │ │ │ ├── TestApplication.java │ │ │ ├── service/ │ │ │ │ └── TestService.java │ │ │ └── web/ │ │ │ └── TestController.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-sentinel-dashboard-apollo/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── alibaba/ │ │ │ │ └── csp/ │ │ │ │ └── sentinel/ │ │ │ │ └── dashboard/ │ │ │ │ ├── DashboardApplication.java │ │ │ │ ├── auth/ │ │ │ │ │ ├── AuthService.java │ │ │ │ │ ├── FakeAuthServiceImpl.java │ │ │ │ │ └── SimpleWebAuthServiceImpl.java │ │ │ │ ├── client/ │ │ │ │ │ ├── CommandFailedException.java │ │ │ │ │ ├── CommandNotFoundException.java │ │ │ │ │ └── SentinelApiClient.java │ │ │ │ ├── config/ │ │ │ │ │ ├── DashboardConfig.java │ │ │ │ │ └── WebConfig.java │ │ │ │ ├── controller/ │ │ │ │ │ ├── AppController.java │ │ │ │ │ ├── AuthController.java │ │ │ │ │ ├── AuthorityRuleController.java │ │ │ │ │ ├── DegradeController.java │ │ │ │ │ ├── DemoController.java │ │ │ │ │ ├── FlowControllerV1.java │ │ │ │ │ ├── MachineRegistryController.java │ │ │ │ │ ├── MetricController.java │ │ │ │ │ ├── ParamFlowRuleController.java │ │ │ │ │ ├── ResourceController.java │ │ │ │ │ ├── SystemController.java │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── ClusterAssignController.java │ │ │ │ │ │ └── ClusterConfigController.java │ │ │ │ │ └── v2/ │ │ │ │ │ └── FlowControllerV2.java │ │ │ │ ├── datasource/ │ │ │ │ │ └── entity/ │ │ │ │ │ ├── ApplicationEntity.java │ │ │ │ │ ├── MachineEntity.java │ │ │ │ │ ├── MetricEntity.java │ │ │ │ │ ├── MetricPositionEntity.java │ │ │ │ │ ├── SentinelVersion.java │ │ │ │ │ └── rule/ │ │ │ │ │ ├── AbstractRuleEntity.java │ │ │ │ │ ├── AuthorityRuleEntity.java │ │ │ │ │ ├── DegradeRuleEntity.java │ │ │ │ │ ├── FlowRuleEntity.java │ │ │ │ │ ├── ParamFlowRuleEntity.java │ │ │ │ │ ├── RuleEntity.java │ │ │ │ │ └── SystemRuleEntity.java │ │ │ │ ├── discovery/ │ │ │ │ │ ├── AppInfo.java │ │ │ │ │ ├── AppManagement.java │ │ │ │ │ ├── MachineDiscovery.java │ │ │ │ │ ├── MachineInfo.java │ │ │ │ │ └── SimpleMachineDiscovery.java │ │ │ │ ├── domain/ │ │ │ │ │ ├── ResourceTreeNode.java │ │ │ │ │ ├── Result.java │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── ClusterAppAssignResultVO.java │ │ │ │ │ │ ├── ClusterAppFullAssignRequest.java │ │ │ │ │ │ ├── ClusterAppSingleServerAssignRequest.java │ │ │ │ │ │ ├── ClusterClientInfoVO.java │ │ │ │ │ │ ├── ClusterGroupEntity.java │ │ │ │ │ │ ├── ClusterStateSingleVO.java │ │ │ │ │ │ ├── ConnectionDescriptorVO.java │ │ │ │ │ │ ├── ConnectionGroupVO.java │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ ├── ClusterClientConfig.java │ │ │ │ │ │ │ ├── ServerFlowConfig.java │ │ │ │ │ │ │ └── ServerTransportConfig.java │ │ │ │ │ │ ├── request/ │ │ │ │ │ │ │ ├── ClusterAppAssignMap.java │ │ │ │ │ │ │ ├── ClusterClientModifyRequest.java │ │ │ │ │ │ │ ├── ClusterModifyRequest.java │ │ │ │ │ │ │ └── ClusterServerModifyRequest.java │ │ │ │ │ │ └── state/ │ │ │ │ │ │ ├── AppClusterClientStateWrapVO.java │ │ │ │ │ │ ├── AppClusterServerStateWrapVO.java │ │ │ │ │ │ ├── ClusterClientStateVO.java │ │ │ │ │ │ ├── ClusterRequestLimitVO.java │ │ │ │ │ │ ├── ClusterServerStateVO.java │ │ │ │ │ │ ├── ClusterStateSimpleEntity.java │ │ │ │ │ │ ├── ClusterUniversalStatePairVO.java │ │ │ │ │ │ └── ClusterUniversalStateVO.java │ │ │ │ │ └── vo/ │ │ │ │ │ ├── MachineInfoVo.java │ │ │ │ │ ├── MetricVo.java │ │ │ │ │ └── ResourceVo.java │ │ │ │ ├── filter/ │ │ │ │ │ └── AuthFilter.java │ │ │ │ ├── metric/ │ │ │ │ │ └── MetricFetcher.java │ │ │ │ ├── repository/ │ │ │ │ │ ├── metric/ │ │ │ │ │ │ ├── InMemoryMetricsRepository.java │ │ │ │ │ │ └── MetricsRepository.java │ │ │ │ │ └── rule/ │ │ │ │ │ ├── InMemAuthorityRuleStore.java │ │ │ │ │ ├── InMemDegradeRuleStore.java │ │ │ │ │ ├── InMemFlowRuleStore.java │ │ │ │ │ ├── InMemParamFlowRuleStore.java │ │ │ │ │ ├── InMemSystemRuleStore.java │ │ │ │ │ ├── InMemoryRuleRepositoryAdapter.java │ │ │ │ │ └── RuleRepository.java │ │ │ │ ├── rule/ │ │ │ │ │ ├── DynamicRuleProvider.java │ │ │ │ │ ├── DynamicRulePublisher.java │ │ │ │ │ ├── FlowRuleApiProvider.java │ │ │ │ │ ├── FlowRuleApiPublisher.java │ │ │ │ │ └── apollo/ │ │ │ │ │ ├── ApolloConfig.java │ │ │ │ │ ├── FlowRuleApolloProvider.java │ │ │ │ │ └── FlowRuleApolloPublisher.java │ │ │ │ ├── service/ │ │ │ │ │ ├── ClusterAssignService.java │ │ │ │ │ ├── ClusterAssignServiceImpl.java │ │ │ │ │ └── ClusterConfigService.java │ │ │ │ └── util/ │ │ │ │ ├── AsyncUtils.java │ │ │ │ ├── ClusterEntityUtils.java │ │ │ │ ├── MachineUtils.java │ │ │ │ └── VersionUtils.java │ │ │ ├── resources/ │ │ │ │ └── application.properties │ │ │ └── webapp/ │ │ │ └── resources/ │ │ │ ├── .gitignore │ │ │ ├── .jshintrc │ │ │ ├── README.md │ │ │ ├── README_zh.md │ │ │ ├── app/ │ │ │ │ ├── scripts/ │ │ │ │ │ ├── app.js │ │ │ │ │ ├── controllers/ │ │ │ │ │ │ ├── authority.js │ │ │ │ │ │ ├── cluster_app_assign_manage.js │ │ │ │ │ │ ├── cluster_app_server_list.js │ │ │ │ │ │ ├── cluster_app_server_manage.js │ │ │ │ │ │ ├── cluster_app_server_monitor.js │ │ │ │ │ │ ├── cluster_app_token_client_list.js │ │ │ │ │ │ ├── cluster_single.js │ │ │ │ │ │ ├── degrade.js │ │ │ │ │ │ ├── flow_v1.js │ │ │ │ │ │ ├── flow_v2.js │ │ │ │ │ │ ├── home.js │ │ │ │ │ │ ├── identity.js │ │ │ │ │ │ ├── login.js │ │ │ │ │ │ ├── machine.js │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ ├── metric.js │ │ │ │ │ │ ├── param_flow.js │ │ │ │ │ │ └── system.js │ │ │ │ │ ├── directives/ │ │ │ │ │ │ ├── header/ │ │ │ │ │ │ │ ├── header.html │ │ │ │ │ │ │ └── header.js │ │ │ │ │ │ └── sidebar/ │ │ │ │ │ │ ├── sidebar-search/ │ │ │ │ │ │ │ ├── sidebar-search.html │ │ │ │ │ │ │ └── sidebar-search.js │ │ │ │ │ │ ├── sidebar.html │ │ │ │ │ │ └── sidebar.js │ │ │ │ │ ├── filters/ │ │ │ │ │ │ └── filters.js │ │ │ │ │ ├── libs/ │ │ │ │ │ │ └── treeTable.js │ │ │ │ │ └── services/ │ │ │ │ │ ├── appservice.js │ │ │ │ │ ├── auth_service.js │ │ │ │ │ ├── authority_service.js │ │ │ │ │ ├── cluster_state_service.js │ │ │ │ │ ├── degradeservice.js │ │ │ │ │ ├── flow_service_v1.js │ │ │ │ │ ├── flow_service_v2.js │ │ │ │ │ ├── identityservice.js │ │ │ │ │ ├── machineservice.js │ │ │ │ │ ├── metricservice.js │ │ │ │ │ ├── param_flow_service.js │ │ │ │ │ └── systemservice.js │ │ │ │ ├── styles/ │ │ │ │ │ ├── main.css │ │ │ │ │ ├── page.css │ │ │ │ │ └── timeline.css │ │ │ │ └── views/ │ │ │ │ ├── authority.html │ │ │ │ ├── cluster/ │ │ │ │ │ ├── client.html │ │ │ │ │ └── server.html │ │ │ │ ├── cluster_app_assign_manage.html │ │ │ │ ├── cluster_app_client_list.html │ │ │ │ ├── cluster_app_server_list.html │ │ │ │ ├── cluster_app_server_overview.html │ │ │ │ ├── cluster_single_config.html │ │ │ │ ├── dashboard/ │ │ │ │ │ ├── home.html │ │ │ │ │ └── main.html │ │ │ │ ├── degrade.html │ │ │ │ ├── dialog/ │ │ │ │ │ ├── authority-rule-dialog.html │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── cluster-client-config-dialog.html │ │ │ │ │ │ ├── cluster-server-assign-dialog.html │ │ │ │ │ │ └── cluster-server-connection-detail-dialog.html │ │ │ │ │ ├── confirm-dialog.html │ │ │ │ │ ├── degrade-rule-dialog.html │ │ │ │ │ ├── flow-rule-dialog.html │ │ │ │ │ ├── param-flow-rule-dialog.html │ │ │ │ │ └── system-rule-dialog.html │ │ │ │ ├── flow_v1.html │ │ │ │ ├── flow_v2.html │ │ │ │ ├── identity.html │ │ │ │ ├── login.html │ │ │ │ ├── machine.html │ │ │ │ ├── metric.html │ │ │ │ ├── pagination.tpl.html │ │ │ │ ├── param_flow.html │ │ │ │ └── system.html │ │ │ ├── dist/ │ │ │ │ ├── css/ │ │ │ │ │ └── app.css │ │ │ │ └── js/ │ │ │ │ ├── app.js │ │ │ │ └── app.vendor.js │ │ │ ├── gulpfile.js │ │ │ ├── index.htm │ │ │ ├── index_dev.htm │ │ │ ├── license-stat.csv │ │ │ └── package.json │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── alibaba/ │ │ └── csp/ │ │ └── sentinel/ │ │ └── dashboard/ │ │ ├── config/ │ │ │ └── DashboardConfigTest.java │ │ ├── datasource/ │ │ │ └── entity/ │ │ │ └── SentinelVersionTest.java │ │ ├── discovery/ │ │ │ ├── AppInfoTest.java │ │ │ └── MachineInfoTest.java │ │ ├── repository/ │ │ │ └── metric/ │ │ │ └── InMemoryMetricsRepositoryTest.java │ │ ├── rule/ │ │ │ ├── apollo/ │ │ │ │ ├── ApolloConfig.java │ │ │ │ ├── ApolloConfigUtil.java │ │ │ │ ├── FlowRuleApolloProvider.java │ │ │ │ └── FlowRuleApolloPublisher.java │ │ │ └── nacos/ │ │ │ ├── FlowRuleNacosProvider.java │ │ │ ├── FlowRuleNacosPublisher.java │ │ │ ├── NacosConfig.java │ │ │ └── NacosConfigUtil.java │ │ └── util/ │ │ └── VersionUtilsTest.java │ ├── alibaba-sentinel-dashboard-nacos/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── alibaba/ │ │ │ │ └── csp/ │ │ │ │ └── sentinel/ │ │ │ │ └── dashboard/ │ │ │ │ ├── DashboardApplication.java │ │ │ │ ├── auth/ │ │ │ │ │ ├── AuthService.java │ │ │ │ │ ├── FakeAuthServiceImpl.java │ │ │ │ │ └── SimpleWebAuthServiceImpl.java │ │ │ │ ├── client/ │ │ │ │ │ ├── CommandFailedException.java │ │ │ │ │ ├── CommandNotFoundException.java │ │ │ │ │ └── SentinelApiClient.java │ │ │ │ ├── config/ │ │ │ │ │ ├── DashboardConfig.java │ │ │ │ │ └── WebConfig.java │ │ │ │ ├── controller/ │ │ │ │ │ ├── AppController.java │ │ │ │ │ ├── AuthController.java │ │ │ │ │ ├── AuthorityRuleController.java │ │ │ │ │ ├── DegradeController.java │ │ │ │ │ ├── DemoController.java │ │ │ │ │ ├── FlowControllerV1.java │ │ │ │ │ ├── MachineRegistryController.java │ │ │ │ │ ├── MetricController.java │ │ │ │ │ ├── ParamFlowRuleController.java │ │ │ │ │ ├── ResourceController.java │ │ │ │ │ ├── SystemController.java │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── ClusterAssignController.java │ │ │ │ │ │ └── ClusterConfigController.java │ │ │ │ │ └── v2/ │ │ │ │ │ └── FlowControllerV2.java │ │ │ │ ├── datasource/ │ │ │ │ │ └── entity/ │ │ │ │ │ ├── ApplicationEntity.java │ │ │ │ │ ├── MachineEntity.java │ │ │ │ │ ├── MetricEntity.java │ │ │ │ │ ├── MetricPositionEntity.java │ │ │ │ │ ├── SentinelVersion.java │ │ │ │ │ └── rule/ │ │ │ │ │ ├── AbstractRuleEntity.java │ │ │ │ │ ├── AuthorityRuleEntity.java │ │ │ │ │ ├── DegradeRuleEntity.java │ │ │ │ │ ├── FlowRuleEntity.java │ │ │ │ │ ├── ParamFlowRuleEntity.java │ │ │ │ │ ├── RuleEntity.java │ │ │ │ │ └── SystemRuleEntity.java │ │ │ │ ├── discovery/ │ │ │ │ │ ├── AppInfo.java │ │ │ │ │ ├── AppManagement.java │ │ │ │ │ ├── MachineDiscovery.java │ │ │ │ │ ├── MachineInfo.java │ │ │ │ │ └── SimpleMachineDiscovery.java │ │ │ │ ├── domain/ │ │ │ │ │ ├── ResourceTreeNode.java │ │ │ │ │ ├── Result.java │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── ClusterAppAssignResultVO.java │ │ │ │ │ │ ├── ClusterAppFullAssignRequest.java │ │ │ │ │ │ ├── ClusterAppSingleServerAssignRequest.java │ │ │ │ │ │ ├── ClusterClientInfoVO.java │ │ │ │ │ │ ├── ClusterGroupEntity.java │ │ │ │ │ │ ├── ClusterStateSingleVO.java │ │ │ │ │ │ ├── ConnectionDescriptorVO.java │ │ │ │ │ │ ├── ConnectionGroupVO.java │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ ├── ClusterClientConfig.java │ │ │ │ │ │ │ ├── ServerFlowConfig.java │ │ │ │ │ │ │ └── ServerTransportConfig.java │ │ │ │ │ │ ├── request/ │ │ │ │ │ │ │ ├── ClusterAppAssignMap.java │ │ │ │ │ │ │ ├── ClusterClientModifyRequest.java │ │ │ │ │ │ │ ├── ClusterModifyRequest.java │ │ │ │ │ │ │ └── ClusterServerModifyRequest.java │ │ │ │ │ │ └── state/ │ │ │ │ │ │ ├── AppClusterClientStateWrapVO.java │ │ │ │ │ │ ├── AppClusterServerStateWrapVO.java │ │ │ │ │ │ ├── ClusterClientStateVO.java │ │ │ │ │ │ ├── ClusterRequestLimitVO.java │ │ │ │ │ │ ├── ClusterServerStateVO.java │ │ │ │ │ │ ├── ClusterStateSimpleEntity.java │ │ │ │ │ │ ├── ClusterUniversalStatePairVO.java │ │ │ │ │ │ └── ClusterUniversalStateVO.java │ │ │ │ │ └── vo/ │ │ │ │ │ ├── MachineInfoVo.java │ │ │ │ │ ├── MetricVo.java │ │ │ │ │ └── ResourceVo.java │ │ │ │ ├── filter/ │ │ │ │ │ └── AuthFilter.java │ │ │ │ ├── metric/ │ │ │ │ │ └── MetricFetcher.java │ │ │ │ ├── repository/ │ │ │ │ │ ├── metric/ │ │ │ │ │ │ ├── InMemoryMetricsRepository.java │ │ │ │ │ │ └── MetricsRepository.java │ │ │ │ │ └── rule/ │ │ │ │ │ ├── InMemAuthorityRuleStore.java │ │ │ │ │ ├── InMemDegradeRuleStore.java │ │ │ │ │ ├── InMemFlowRuleStore.java │ │ │ │ │ ├── InMemParamFlowRuleStore.java │ │ │ │ │ ├── InMemSystemRuleStore.java │ │ │ │ │ ├── InMemoryRuleRepositoryAdapter.java │ │ │ │ │ └── RuleRepository.java │ │ │ │ ├── rule/ │ │ │ │ │ ├── DynamicRuleProvider.java │ │ │ │ │ ├── DynamicRulePublisher.java │ │ │ │ │ ├── FlowRuleApiProvider.java │ │ │ │ │ ├── FlowRuleApiPublisher.java │ │ │ │ │ └── nacos/ │ │ │ │ │ ├── FlowRuleNacosProvider.java │ │ │ │ │ ├── FlowRuleNacosPublisher.java │ │ │ │ │ └── NacosConfig.java │ │ │ │ ├── service/ │ │ │ │ │ ├── ClusterAssignService.java │ │ │ │ │ ├── ClusterAssignServiceImpl.java │ │ │ │ │ └── ClusterConfigService.java │ │ │ │ └── util/ │ │ │ │ ├── AsyncUtils.java │ │ │ │ ├── ClusterEntityUtils.java │ │ │ │ ├── MachineUtils.java │ │ │ │ └── VersionUtils.java │ │ │ ├── resources/ │ │ │ │ └── application.properties │ │ │ └── webapp/ │ │ │ └── resources/ │ │ │ ├── .gitignore │ │ │ ├── .jshintrc │ │ │ ├── README.md │ │ │ ├── README_zh.md │ │ │ ├── app/ │ │ │ │ ├── scripts/ │ │ │ │ │ ├── app.js │ │ │ │ │ ├── controllers/ │ │ │ │ │ │ ├── authority.js │ │ │ │ │ │ ├── cluster_app_assign_manage.js │ │ │ │ │ │ ├── cluster_app_server_list.js │ │ │ │ │ │ ├── cluster_app_server_manage.js │ │ │ │ │ │ ├── cluster_app_server_monitor.js │ │ │ │ │ │ ├── cluster_app_token_client_list.js │ │ │ │ │ │ ├── cluster_single.js │ │ │ │ │ │ ├── degrade.js │ │ │ │ │ │ ├── flow_v1.js │ │ │ │ │ │ ├── flow_v2.js │ │ │ │ │ │ ├── home.js │ │ │ │ │ │ ├── identity.js │ │ │ │ │ │ ├── login.js │ │ │ │ │ │ ├── machine.js │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ ├── metric.js │ │ │ │ │ │ ├── param_flow.js │ │ │ │ │ │ └── system.js │ │ │ │ │ ├── directives/ │ │ │ │ │ │ ├── header/ │ │ │ │ │ │ │ ├── header.html │ │ │ │ │ │ │ └── header.js │ │ │ │ │ │ └── sidebar/ │ │ │ │ │ │ ├── sidebar-search/ │ │ │ │ │ │ │ ├── sidebar-search.html │ │ │ │ │ │ │ └── sidebar-search.js │ │ │ │ │ │ ├── sidebar.html │ │ │ │ │ │ └── sidebar.js │ │ │ │ │ ├── filters/ │ │ │ │ │ │ └── filters.js │ │ │ │ │ ├── libs/ │ │ │ │ │ │ └── treeTable.js │ │ │ │ │ └── services/ │ │ │ │ │ ├── appservice.js │ │ │ │ │ ├── auth_service.js │ │ │ │ │ ├── authority_service.js │ │ │ │ │ ├── cluster_state_service.js │ │ │ │ │ ├── degradeservice.js │ │ │ │ │ ├── flow_service_v1.js │ │ │ │ │ ├── flow_service_v2.js │ │ │ │ │ ├── identityservice.js │ │ │ │ │ ├── machineservice.js │ │ │ │ │ ├── metricservice.js │ │ │ │ │ ├── param_flow_service.js │ │ │ │ │ └── systemservice.js │ │ │ │ ├── styles/ │ │ │ │ │ ├── main.css │ │ │ │ │ ├── page.css │ │ │ │ │ └── timeline.css │ │ │ │ └── views/ │ │ │ │ ├── authority.html │ │ │ │ ├── cluster/ │ │ │ │ │ ├── client.html │ │ │ │ │ └── server.html │ │ │ │ ├── cluster_app_assign_manage.html │ │ │ │ ├── cluster_app_client_list.html │ │ │ │ ├── cluster_app_server_list.html │ │ │ │ ├── cluster_app_server_overview.html │ │ │ │ ├── cluster_single_config.html │ │ │ │ ├── dashboard/ │ │ │ │ │ ├── home.html │ │ │ │ │ └── main.html │ │ │ │ ├── degrade.html │ │ │ │ ├── dialog/ │ │ │ │ │ ├── authority-rule-dialog.html │ │ │ │ │ ├── cluster/ │ │ │ │ │ │ ├── cluster-client-config-dialog.html │ │ │ │ │ │ ├── cluster-server-assign-dialog.html │ │ │ │ │ │ └── cluster-server-connection-detail-dialog.html │ │ │ │ │ ├── confirm-dialog.html │ │ │ │ │ ├── degrade-rule-dialog.html │ │ │ │ │ ├── flow-rule-dialog.html │ │ │ │ │ ├── param-flow-rule-dialog.html │ │ │ │ │ └── system-rule-dialog.html │ │ │ │ ├── flow_v1.html │ │ │ │ ├── flow_v2.html │ │ │ │ ├── identity.html │ │ │ │ ├── login.html │ │ │ │ ├── machine.html │ │ │ │ ├── metric.html │ │ │ │ ├── pagination.tpl.html │ │ │ │ ├── param_flow.html │ │ │ │ └── system.html │ │ │ ├── dist/ │ │ │ │ ├── css/ │ │ │ │ │ └── app.css │ │ │ │ └── js/ │ │ │ │ ├── app.js │ │ │ │ └── app.vendor.js │ │ │ ├── gulpfile.js │ │ │ ├── index.htm │ │ │ ├── index_dev.htm │ │ │ ├── license-stat.csv │ │ │ └── package.json │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── alibaba/ │ │ └── csp/ │ │ └── sentinel/ │ │ └── dashboard/ │ │ ├── config/ │ │ │ └── DashboardConfigTest.java │ │ ├── datasource/ │ │ │ └── entity/ │ │ │ └── SentinelVersionTest.java │ │ ├── discovery/ │ │ │ ├── AppInfoTest.java │ │ │ └── MachineInfoTest.java │ │ ├── repository/ │ │ │ └── metric/ │ │ │ └── InMemoryMetricsRepositoryTest.java │ │ ├── rule/ │ │ │ ├── apollo/ │ │ │ │ ├── ApolloConfig.java │ │ │ │ ├── ApolloConfigUtil.java │ │ │ │ ├── FlowRuleApolloProvider.java │ │ │ │ └── FlowRuleApolloPublisher.java │ │ │ └── nacos/ │ │ │ ├── FlowRuleNacosProvider.java │ │ │ ├── FlowRuleNacosPublisher.java │ │ │ ├── NacosConfig.java │ │ │ └── NacosConfigUtil.java │ │ └── util/ │ │ └── VersionUtilsTest.java │ ├── alibaba-sentinel-datasource-apollo/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── sentinel/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ ├── apollo-env.properties │ │ └── application.properties │ ├── alibaba-sentinel-datasource-nacos/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── sentinel/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── alibaba-sentinel-rate-limiting/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── alibaba/ │ │ │ └── sentinel/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── pom.xml │ ├── stream-consumer-self/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ ├── TestApplication.java │ │ │ ├── TestController.java │ │ │ ├── TestListener.java │ │ │ └── TestTopic.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-content-route/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-delayed-message/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-exception-handler-1/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-exception-handler-2/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ ├── stream-exception-handler-3/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── didispace/ │ │ │ └── stream/ │ │ │ └── TestApplication.java │ │ └── resources/ │ │ └── application.properties │ └── stream-exception-handler-4/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── com/ │ │ └── didispace/ │ │ └── stream/ │ │ └── TestApplication.java │ └── resources/ │ └── application.properties ├── README.md └── README_zh.md