为什么选择SpringCloud作为微服务架构
- 选型依据
- 整体解决方案和框架成熟度
- 社区热度
- 可维护性
- 学习曲线
- 当前各大IT公司用的微服务架构有那些?
- 阿里:dubbo+HFS
- 京东:JFS
- 新浪:Motan
- 当当网:DubboX
…
SpringCloud概念
Spring官网:https://spring.io/
什么是微服务架构
微服务有什么优点
微服务就是将单个应用拆分为了多个应用(这里的应用可以理解为jar包或war包),然后通过框架提供的网关、服务治理、服务发现、服务熔断等等,给人的感觉就会像是一个应用,主要目的是拆分多个应用,一旦并发、cpu、内存达到一定的瓶颈,可以采取多机部署,分担服务器压力。
往往一个庞大的高并发的业务系统都会采用微服务。同时微服务给人的感觉就是专业的人干专业的事,订单模块就是负责订单业务,用户模块就是负责用户相关业务,这样做的好处就是项目比较好维护。
SpringCloud和SpringBoot关系
springBoot专注于快速方便的开发单个个体微服务。
SpringCloud是关注全局的微服务协调整理治理框架,它将spring boot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理,服务发现,断路器,路由,微代理,全局锁,决策精选,分布式会话等等集成服务。
SpringBoot可以离开SpringClooud独立使用,开发项目,但是SpringCloud离不开SpringBoot,属于依赖关系
SpringBoot专注与快速、方便的开发单个个体微服务,SpringCloud关注全局的服务治理框架
SpringCloud 和Dobbo区别
最大区别:SpringCloud抛弃了Dubbo的RPC通信,采用的是基于HTTP的REST方式
严格来说,这两种方式各有优劣。虽然从一定程度上来说,后者牺牲了服务调用的性能,但也避免了上面提到的原生RPC带来的问题。而且REST相比RPC更为灵活,服务提供方和调用方的依赖只依靠一纸契约,不存在代码级别的强依赖,这个优点在当下强调快速演化的微服务环境下,显得更加合适。
品牌机和组装机的区别
社区支持与更新力度的区别
**总结:**二者解决的问题域不一样:Dubbo的定位是一款RPC框架,而SpringCloud的目标是微服务架构下的一站式解决方案。
SpringCloud能干嘛?
Distributed/versioned configuration 分布式/版本控制配置
Service registration and discovery 服务注册与发现
Routing 路由
Service-to-service calls 服务到服务的调用
Load balancing 负载均衡配置
Circuit Breakers 断路器
Distributed messaging 分布式消息管理
标签:服务,SpringBoot,框架,springCloud,RPC,SpringCloud,架构 From: https://blog.51cto.com/u_16336516/8150044