微服务架构(3)——RPC框架

目录:

1、为什么需要RPC框架
2、RPC框架对比选型
3、RPC框架使用
4、RPC框架原理

为什么需要RPC框架

在没有使用微服务之前,我们所有的代码都在一个项目中,都部署在同一个tomcat里,所有的调用都是本地调用,就用不上RPC框架。
但是当我们把一个系统拆分成多个服务之后,每个服务都独立部署。服务之间要相互调用,就需要通过远程调用了。
RPC(Remote Procedure Call)远程过程调用,其实就是一个服务调用另一个服务提供的接口。比较典型的就是HTTP接口调用了,一个服务对外提供一个HTTP接口,其它服务都可以进行调用。
不用RPC框架的话,我们一般就是通过HTTP组件构建出来一个HTTP请求,包括请求路径、请求头、请求体,然后把这个请求发送出去。接收到返回的响应信息后解析响应头,状态码,响应体。在微服务架构中,远程调用时非常多的,如果我们还是以这种方式的话那是非常的麻烦,所以这个时候RPC框架就出现了。
使用RPC框架的话,远程接口调用就像是本地调用一样,直接调用一个方法,RPC框架就自动帮你构造请求,发送请求,解析返回的响应信息。完全不需要你去关心HTTP之类的东西了。

RPC框架对比选型

目前我们见的比较多的RPC框架就是Spring Cloud里面集成的Feign和阿里开源的Dubbo。

Feign的话它是基于HTTP协议来实现远程调用的,其实就是它自动帮我们去封装了http请求。它的优点在于服务提供方和调用方不存在强依赖,在强调快速演化的微服务环境下,显得更加合适

你可能感兴趣的:(微服务架构,java,微服务架构)