Spring Cloud简介
Spring Could是一个基于Spring Boot实现的微服务架构开发工具,它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一系列简短的开发方式。
Spring Cloud包含了多个子项目,例如:
- Spring Could Config:配置管理工具,支持使用git存储配置内容,可以使用它实现应用配置的外部化存储,并支持客户端配置信息刷新、加密/解密配置内容等。
- Spring Cloud Netflix:核心组件,对多个Netflix OSS开源套件进行整合。
- Eureka:服务治理组件,包含服务注册中心,实现服务注册和发现机制。
- Hystrix:容错管理组件,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供容错。
- Ribbon:客户端负载均衡的服务调用组件。
- Feign:基于Ribbon和Hystrix的声明市服务调用组件。
- Zuul:网管组件。提供智能路由、访问过滤等功能。
- Archaius:外部化配置组件。
- Spring Cloud Bus:事件消息总线,用于传播集群中的状态变化或事件,以触发后续的处理,比如用来动态刷新配置等。
- Spring Cloud Cluster:针对zookeeper/Redis等的选举算法和通用状态模式的实现。
- 其他组件今后用到再介绍。
Spring Cloud 版本说明:
Spring Cloud没像Spring的其他项目一样用蕾丝1.x.x的方式命名,因为它拥有多个子项目,其他子项目各自维护自己的版本,所以Spring Could的版本往往会包含多个不同版本的子项目,故而采用命名的方式来标示版本。比如最早的Release版本为Angel,第二个Release版本是Brixton…
经过上面的解释,我们不难猜出,Angel.SR6、Brixton.SR5就是版本号了。
Spring-boot 回顾
spring-boot项目脚手架。
spring-boot-starter-actuator模块的实现对于实现微服务的中小团队来说,可以有效的省去或大大减少监控系统在采集应用指标的时候的开发量。
首先在maven中添加依赖:
<!--spring-boot监控-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
在properties中添加:
#加入下面一句,以便访问监控信息
management.endpoints.web.exposure.include=*
#否则只能访问到/actuator/health和/actuator/info
现在启动spring-boot项目,访问/actuator。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190906101300699.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L05vX0dhbWVfTm9fTGlmZV8=,size_16,color_FFFFFF,t_70)
可以看到大部分能够访问的url,每个url具体的作用暂时不做详细的介绍。