【问题标题】:Why is the term stub used for RPC?为什么术语存根用于 RPC?
【发布时间】:2021-12-04 01:23:47
【问题描述】:

维基百科说

分布式计算中的存根是一段代码,用于在远程过程调用 (RPC) 期间转换客户端和服务器之间传递的参数

stub这个词的原意与它在RPC中的作用有什么关系?

【问题讨论】:

  • 在代码中,“存根”一词通常用于表示代替真实或最终事物的事物。在 RPC 的上下文中,客户端存根代替最终将被执行的目标函数,同时允许客户端调用存根,就好像它是目标实现一样。至少我是这么想的。

标签: grpc rpc


【解决方案1】:

存根是整体的一小部分,例如票根或用过的铅笔的残根。等效地,它是“缩短”的东西。在计算中,存根看起来像方法,但没有方法的逻辑。该方法的处理被“缩短”,因为其中大部分都丢失了。存根术语也用于“测试存根”(又名模拟)和“方法存根”。有些人可能会称他们为“替身”。

测试存根很常见,但您可能对方法存根不太熟悉。方法存根是勉强实现的方法,具有正确的参数并返回正确的值类型,但没有适当的处理。例如,random() 函数的存根始终可以是return 4。它们在模拟器和最初实现系统时很常见。

对于 RPC,存根将其方法、请求类型和响应类型转换为 RPC 系统使用的形式。但是 RPC 的实际处理是远程完成的。存根本质上只是一个可用性功能,用于提供远程方法在本地存在的外观。

【讨论】:

  • 谢谢! (微不足道的)问题实际上更多地是关于为什么将其命名为存根。例如,我们为什么不将其命名为“RPCWrapper”或“RPCAdaptor”?
  • 啊,好吧。我扩展了答案。
  • 这对我来说很有意义,非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-04-11
  • 2014-07-24
  • 1970-01-01
  • 2011-04-27
  • 2019-06-09
  • 1970-01-01
  • 2019-08-20
相关资源
最近更新 更多