深入学习 DUBBO

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入学习 DUBBO相关的知识,希望对你有一定的参考价值。

1、什么是 RPC 协议?

RPC 的全称是 Remote Procedure Call 是一种进程间通信方式。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即程序员无论是调用本地的还是远程的,本质上编写的调用代码基本相同。

参考资料:

深入浅出 RPC - 浅出篇 - 瞬息之间- 博客频道 - CSDN.NET

2、为什么要使用 RPC 协议?

1. 简单:RPC 概念的语义十分清晰和简单,这样建立分布式计算就更容易。

2. 高效:过程调用看起来十分简单而且高效。

3. 通用:在单机计算中过程往往是不同算法部分间最重要的通信机制。

通俗一点说,就是一般程序员对于本地的过程调用很熟悉,那么我们把 RPC 作成和本地调用完全类似,那么就更容易被接受,使用起来毫无障碍。

2、常见的 RPC 框架有哪些,它们都有什么特点?

 

3、RPC 框架的调用原理?

实现 RPC 的程序一般包括 5 个部分:User、User-Stub、RPCRunTime、Server-Stub、Server。

技术分享

这里 user 就是 client 端,当 user 想发起一个远程调用时,它实际是通过本地调用 user-stub。user-stub 负责将调用的接口、方法和参数通过约定的协议规范进行编码并通过本地的 RPCRuntime 实例传输到远端的实例。远端 RPCRuntime 实例收到请求后交给 server-stub 进行解码后发起本地端调用,调用结果再返回给 user 端。

4、如何选择合适的 RPC 框架?

目前市面上提供的 RPC 框架已经可算是五花八门,百家争鸣了。需要根据实际使用场景谨慎选型,需要考虑的选型因素我觉得至少包括下面几点:

1. 性能指标

2. 是否需要跨语言平台

3. 内网开放还是公网开放

4. 开源 RPC 框架本身的质量、社区活跃度

 

1、什么是 DUBBO?

 

3、DUBBO 与其他 RPC 框架的区别,它有什么优势?

 

4、DUBBO 框架的整体架构?

 

5、DUBBO 服务的负载均衡策略?

 

6、DUBBO 的调用失败策略?

 

以上是关于深入学习 DUBBO的主要内容,如果未能解决你的问题,请参考以下文章

从零开始手写 dubbo rpc 框架

深入理解RPC

RPC框架与Dubbo完整使用

RPC框架与Dubbo完整使用

dubbo协议

RPC框架深入剖析(下)