为什么选择SpringCloud?
因为SpringCloud出现,对微服务技术提供了非常大的帮助,因为SpringCloud 提供了一套完整的微服务解决方案,不像其他框架只是解决了微服务中某个问题。
回忆以前学过的内容:
- 服务治理: 阿里巴巴开源的Dubbo和当当网在其基础上扩展的Dubbox、Eureka、Apache 的Consul等。
- 分布式配置中心: 百度的disconf、Netfix的Archaius、360的QConf、SpringCloud、携程的阿波罗等。
- 分布式任务:xxl-job、elastic-job、springcloud的task等。
服务跟踪:京东的hyra、springcloud的sleuth等。
我们会发现,上面列举出来的都有SpringCloud的身影。也就是说,把SpringCloud弄懂,就可以把微服务项目用到的相关技术都解决了????。
SpringCloud简介
SpringCloud是基于SpringBoot基础之上开发的微服务框架,SpringCloud是一套目前非常完整的微服务解决方案框架,其内容包含服务治理、注册中心、配置管理、断路器、智能路由、微代理、控制总线、全局锁、分布式会话等SpringCloud包含众多的子项目,例如:SpringCloud config 分布式配置中心。
SpringCloud netflix 核心组件:
- Eureka(音标:
[/juˈriːkə]
):服务治理 注册中心 - Hystrix(音标:
[hɪst'rɪks]
):服务保护框架 - Ribbon(音标:
[ˈrɪbən]
):客户端负载均衡器 - Feign(音标:
[feɪn]
):基于ribbon和hystrix的声明式服务调用组件 - Zuul(音标:
祖尔
): 网关组件,提供智能路由、访问过滤等功能。