经验整理-24-SpringCloud---100-@
为什么用springcloud,和传统rpc相比有什么好处?和dubbo相比呢? 一 . 答:在传统rpc(如httpclient)远程调用中,服务与服务依赖关系,管理比较复杂,所以需要使用 服务治理,管理服务与服务之间依赖关系 ,可以实现 1.服务调用、负载均衡、容错等;(注意是本地负载均衡,即:调用者拿到服务方调用信息之后,就像本地调用一样的使用调用方法。和传统nginx负载均衡是有区别的) 2.实现服务注册与发现 。( 服务提供者会把当前自己服务器的信息 比如服务地址通讯地址等以别名方式注册到注册中心上 ; 调用者以别名的方式去注册中心上获取到实际的服务器的信息 ,然后在实现本地rpc调用远程 还有一个很好的优点,动态注册与发现,即服务注册中心不用重启,提供者可以开启一个新的服务,注册中心会检测到它。 ) 二 . 答: Dubbo仅仅是一个实现了远程调用的RPC框架,服务化的中间件则需要自己开发;而 SpringCloud 则是实施微服务的一系列套件,包括: 远程调用负载均衡、服务注册与发现、断路器服务保护、服务状态监控、分布式配置中心、智能路由网关 、一次性令牌、全局锁、分布式会话管理、集群状态管理等 springcloud和dubbo 组件运行流程对比 下图中的每个组件都是需要部署在单独的服务器上,gateway用来接受前端请求、聚合服务,并批量调用后台原子服务