rpc&rest

RPC(Remote process call):远程过程调用,rpc本身是一个进程之间调用的过程,并不是一个协议,而实现rpc的框架有很多种,比如阿里的dubbo。
在目前云计算、微服务和分布式应用解耦的情况下,传统的大应用不能适应目前互联网可扩展性、分布式的需求,进而需要将应用拆分为一个个服务,也即是微服务化进行解耦,提升可扩展性和分布式需求。而原来在一个大应用内、如进程内或者线程间的调用请求,在微服务化的情况下,各个微服务之间就需要有频繁的服务请求调用,各微服务或小应用之间会有相应的服务接口或者方法。RPC作为服务请求调用的一种方法,是实现微服务的一种方式,阿里的dubbo框架用rpc的方法来实现微服务。
另外有比如springCloud用rest api接口来实现微服务之间的服务请求调用。

dubbo

dubbo是一种微服务开发框架,dubbo一般使用zookeeper做服务管理和服务发现。项目停滞维护一段时间,目前又开始继续维护,在国内市场占用一席之地。

springcloud

springcloud也是一种微服务开发工具,springcloud使用consul做服务管理,服务发现。
Spring Cloud的子项目,大致可分成两类,一类是对现有成熟框架”Spring Boot化”的封装和抽象,也是数量最多的项目;第二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka, ActiveMQ这样的角色。对于我们想快速实践微服务的开发者来说,第一类子项目就已经足够使用,如:Spring Cloud Netflix 是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册,负载均衡、断路器、REST客户端、请求路由等。

dubbox

当当网基于Dubbo的开源扩展,实现dubbox微服务框架,增加了对RESTful接口支持。


https://blog.51cto.com/7142665/2047786