# ss-spring-cloud **Repository Path**: sansheng93/ss-spring-cloud ## Basic Information - **Project Name**: ss-spring-cloud - **Description**: 基于 Spring Cloud Netflix 的一套微服务架构下的 demo 项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-11-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### README.md 基于 Spring Cloud Netflix 的一套微服务架构下的 demo 项目。 技术组成如下: - **eureka** --- 微服务治理, 服务注册和发现 - **ribbon** --- 服务消费者, 控制负载均衡与请求重试 - **hystrix** --- 断路器, 服务降级与熔断 - **feign** --- 集成 `ribbon` + `hystrix`, 提供声明式消费者客户端 - **hystrix dashboard** --- 单服务的监控 - **turbine** --- 汇集监控信息 - **zuul** --- `API` 网关, 提供微服务的统一入口, 并进行权限验证 - **config** --- 云端配置中心 - **bus** --- 消息总线, 配置刷新 - **sleuth + zipkin** --- 链路跟踪 #### 项目结构 ``` ├─基础依赖: sc01-commons │ ├─商品服务: sc02-itemservice, 端口 8001, 8002 │ ├─用户服务: sc03-userservice, 端口 8101, 8102 │ ├─订单服务: sc04-orderservice, 端口 8201, 8202 ├─注册中心: sc07-eurekacluster, 端口 2001, 2002, 2003 ├─断路器与监控仪表盘: sc09-hystrixdashborad, 端口 4001 ├─聚合监控: sc11-turbine, 端口 4001 │ ├─api网关: sc12-zuul, 端口 3001 ├─配置中心: sc13-config, 端口 6001 └─[更多模块待更新...] ``` #### 相关工具 ```yml # actuator 暴露监控端点 http://localhost:3001/actuator/hystrix.stream # turbine 聚合监控端点 http://localhost:5001/turbine.stream # hystrix dashboard http://localhost:4001/hystrix ``` [Apache Binaries 并发测试工具](http://httpd.apache.org/docs/current/platform/windows.html#down) - 并发50次, 发送20000个请求, 请求url: ```powershell ab -n 20000 -c 50 http://localhost:3001/item-service/35 ``` - 图例说明 ![](https://i.loli.net/2020/11/24/VnIJLyqtgjfC4AQ.png) #### 笔记(待整理) ``` 2.1.7.RELEASE Greenwich.SR1 org.springframework.retry spring-retry org.springframework.cloud spring-cloud-starter-netflix-hystrix org.springframework.boot spring-boot-starter-actuator spring: application: name: hystrix-dashboard server: port: 4001 eureka: client: service-url: defaultZone: http://eureka-1:2001/eureka, http://eureka-2:2002/eureka, http://eureka-3:2003/eureka rabbitmq: host: 192.168.83.128 port: 5672 username: sansheng password: mymq996icu java -jar zipkin-server-2.23.0-exec.jar --zipkin.collector.rabbitmq.uri=amqp://sansheng:mymq996icu@192.168.83.128:5672 ```