spring cloud 已成为一套完美微服务解决框架,它提供了一整套服务治理相关的东西,比如:服务注册/发现、断路器、负载均衡、接口网关、接口方式调用、分布式配置中心等。我相信只要往微服务,基本上spring cloud 是绕不开的话题。Dubbo采用的通信机制 RPC,spring cloud采用http的restful api。
要了解spring cloud,首先你得了解spring boot,如果你不知道可能就比较难以上手了,了解的同学也可以去看我的另一篇“spring boot 笔记”。
首先,你要达到入门级的水平,要系统化的学习,这里推荐你看书《Spring Cloud微服务实战》。
spring cloud常见注解
@EnableEurekaServer | eureka-server |
@EnableDiscoveryClient | eureka-client |
@RibbonClient | Ribbon |
@LoadBalanced | Ribbon |
@EnableFeignClients | feign |
@FeignClient | feign |
@EnableConfigServer | spring-config |
@RefreshScope | spring-config |
@EnableCircuitBreaker | hystrix |
@EnableHystrix | hystrix(继承@EnableCircuitBreaker) |
@HystrixCommand | hystrix |
@EnableTurbine | turbine |
@EnableTurbineStream | turbine-amqp |
@EnableHystrixDashboard | hystrix-dashboard |
@EnableZuulProxy | zuul |
@InboundChannelAdapter | stream |
@StreamListener | stream |
@Poller | stream |
@Transformer | stream |
@Output | stream |
@EnableBinding | stream |
@EnableZipkinServer | sleuth-zipkin |
@EnableZipkinStreamServer | sleuth-zipkin-stream |
另外本人也提过了一些快速上手的教材,该仓库包含Spring Boot、Spring Boot & Shiro、Spring Cloud和Spring Boot & Spring Security,如果该系列教程对您有帮助的话,还请点个star给予支持!
Spring Boot 1.x 主要是基于1.5.18.RELEASE
Spring Boot 2.x 主要是基于2.1.0.RELEASE
spring-cloud 主要是基于1.5.18.RELEASE及Edgware.SR3
Spring Boot 1.x系列
- Spring-Boot-JdbcTemplate:集成JdbcTemplate
- Spring-Boot-MyBatis:集成MyBatis
- Spring-Boot-Mapper-PageHelper:整合MyBatis通用Mapper和PageHelper
- Spring-Boot-MyBatis-MultiDataSource:MyBatis配置Druid多数据源
- Spring-Boot-Thymeleaf:集成thymeleaf
- Spring-Boot-Validator:集成Hibernate Validator参数校验
- Spring-Boot-Async-web:集成web异步调用
- Spring-Boot-Actuator:集成Actuator监控Spring Boot应用
- Spring-Boot-Admin:集成热门admin-server监控服务
- Spring-Boot-Swagger2:整合Swagger2构建RESTful API
- Spring-Boot-batch:集成spring-batch对job进行处理
- Spring-Boot-Dubbo:集成rpc框架Dubbo的支持
- Spring-Boot-Mock:整合集成测试Mock服务
- Spring-Boot-Email:集成发送邮件
Spring Boot 1.x & cache系列
- Spring-Boot-Ehcache:集成Ehcache缓存数据
- Spring-Boot-Redis:集成Redis缓存数据
Spring Boot 1.x & JPA &大数据系列
- Spring-Boot-Kafka:接入Kafka
- Spring-Boot-Rabbitmq:接入Rabbitmq
- Spring-Boot-Activemq:接入Activemq
- Spring-Boot-Data-JPA:整合JPA的演示
- Spring-Boot-Data-MongoDB:接入面向JPA的Mongo DB
- Spring-Boot-Data-Redis:接入面向JPA的Redis
- Spring-Boot-Data-Neo4j:接入面向JPA的Neo4j
Spring Boot 1.x & Security系列
- Spring-Security-Authentication:自定义用户认证
- Spring-Security-ValidateCode:添加图形验证码
- Spring-Security-RememberMe:添加记住我功能
- Spring-Security-SmsCode:短信验证码登录
Spring Boot 1.x & Shiro系列
- Spring-Boot-Shiro-Authentication:用户认证
- Spring-Boot-Shiro-RememberMe:Remember Me
- Spring-Boot-Shiro-Authorization:Shiro权限控制
- Spring-Boot-Shiro-Redis:Shiro Redis
- Spring-Boot-Shiro-Ehcache:Shiro Ehcache
- Spring-Boot-Shiro-Thymeleaf:Thymeleaf中使用Shiro标签
- Spring-Boot-Shiro-Session:Shiro在线会话管理
Spring Boot 2.x
- Spring-Boot-WebFlux-MongoDB:WebFlux及mongodb基本使用
Spring Cloud教程
- Spring-Cloud-Eureka-Service:Eureka服务端集群
- Spring-Cloud-Eureka-Client:Eureka客户端集群
- Spring-Cloud-Ribbon-LoadBalance:接入Ribbon客户端负载均衡
- Spring-Cloud-Hystrix-Circuit-Breaker:接入Hystrix服务容错
- Spring-Cloud-Feign:接入Feign 客户端声明式服务
- Spring-Cloud-Hystrix-Dashboard-Turbine:接入Hystrix Dashboard仪表盘
- Spring-Cloud-Zuul:接入Zuul服务网关
- Spring-Cloud-Config:统一配置管理及Bus刷新配置
- Spring-Cloud-Sleuth-Zipkin:接入Sleuth跟踪微服务
- Spring-Cloud-Consul:Consul服务治理
最后,由于spring cloud组件使用的非常多,短时间内基本上很难达到高阶水平,后续会根据使用的情况专门分享。