文章目录
[+]
比较正式的描述是:一种通过网络从远程打算机程序上要求做事,而不须要理解底层网络技能的协议。
那么我们至少从这样的描述中挖掘出几个要点:

(图片来自网络侵删)
实在这是运用开拓到一定的阶段的强烈需求驱动的。
如果我们开拓大略的单一运用,逻辑大略、用户不多、流量不大,那我们用不着;当我们的系统访问量增大、业务增多时,我们会创造一台单机运行此系统已经无法承受。此时,我们可以将业务拆分成几个互不关联的运用,分别支配在各自机器上,以划清逻辑并减小压力。此时,我们也可以不须要RPC,由于运用之间是互不关联的。当我们的业务越来越多、运用也越来越多时,自然的,我们会创造有些功能已经不能大略划分开来或者划分不出来。此时,可以将公共业务逻辑抽离出来,将之组成独立的做事Service运用 。而原有的、新增的运用都可以与那些独立的Service运用 交互,以此来完成完全的业务功能。以是此时,我们急需一种高效的运用程序之间的通讯手段来完成这种需求,以是你看,RPC大显技艺的时候来了!实在3描述的场景也是做事化 、微做事 和分布式系统架构 的根本场景。即RPC框架便是实现以上构造的有力办法。
常用的RPC框架
目前常用的RPC框架如下:
Thrift:thrift是一个软件框架,用来进行可扩展且跨措辞的做事的开拓。它结合了功能强大的软件堆栈和代码天生引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程措辞间无缝结合的、高效的做事。Dubbo:Dubbo是一个分布式做事框架,以及SOA管理方案。其功能紧张包括:高性能NIO通讯及多协议集成,做事动态寻址与路由,软负载均衡与容错,依赖剖析与降级等。Dubbo是阿里巴巴内部的SOA做事化管理方案的核心框架,Dubbo自2011年开源后,已被许多非阿里系公司利用。Spring Cloud:Spring Cloud由浩瀚子项目组成,如Spring Cloud Config、Spring Cloud Netflix、Spring Cloud Consul 等,供应了搭建分布式系统及微做事常用的工具,如配置管理、做事创造、断路器、智能路由、微代理、掌握总线、一次性token、全局锁、选主、分布式会话和集群状态等,知足了构建微做事所需的所有办理方案。Spring Cloud基于Spring Boot, 使得开拓支配极其大略。gRPC:一开始由 google 开拓,是一款措辞中立、平台中立、开源的远程过程调用(RPC)系统。