Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。
springcloud官方文档 http://projects.spring.io/spring-cloud/
- 基于springBoot构建各种微服务项目
- 基于Eureka实现注册中心的高可用
- 基于Ribbon实现客户端负载均衡
- 基于Hystrix实现服务容错保护
- 基于Feign实现声明式服务调用
- 基于Zuul实现API网关
- 基于Config实现分布式配置中心
- 整合spring boot admin项目实现服务监控
- common 基础服务模块
- user 用户服务模块
- register 注册中心
- support 第三方支持模块
- gateway API网关
- core 工具类,数据初始化
- mq 分布式消息
- monitor 监控
- turbine 集群监控
ignored-services: "*" 这里表示忽略自动为微服务创建路由
使用yml的配置方式 其中user-route是随便取的对应你所定义的微服务
zuul: routes: user-route: path: /user/** service-id: user-service
同时指定path和URL,并且不破坏Hystrix、Ribbon特性 参考配置 zuul: routes: user-route: path: /user/** service-id: user-service ribbon: eureka: enabled: false # 为Ribbon禁用Eureka user-service: # 这边是serviceId ribbon: listOfServers: http://localhost:8081,http://localhost:8082 另外yml的配置方式可以保证路由规则的有序性,而properties文件无法保证顺序 例如: 先匹配 user-route 后匹配 common-route 就可以这么写 zuul: routes: user-route: path: /user/** service-id: user-service common-route: path: /com/** service-id: common-service