RPC在消息传递方面有什么缺点?RPC在消息传递方面有什么缺点?
14
A
回答
11
作为一般规则,RPC提供比其他一些进程间通信更高级别的抽象。这使得它可能比低级基元更容易使用。对于这种抽象,由于封送处理/解组处理,您可能会因此付出一些代价,并且可能必须处理简单场景的配置中增加的复杂性。
您可能会对Jackie Silcock编写的thesis(pdf)感兴趣,其中讨论了消息传递,RPC和分布式共享内存在性能和实现方面的差异。您也可以阅读其中一篇基于论文的论文:Message Passing, Remote Procedure Calls and Distributed Shared Memory as Communication Paradigms for Distributed Systems(pdf)
22
您是在谈论RPC还是消息传递?像(通常)异步消息一样?如果这就是你正在谈论的内容,那么消息传递往往会以复杂性和额外基础设施为代价变得更加强大。
最简单的例子是,如果您有RPC-> RPC-> RPC的情况,那么最终会产生3个进程/机器深度的调用堆栈。这些进程/机器中的任何一个都可能在处理期间失败,并且整个堆栈展开。
如果您正在进行消息传递,则进程之间的实际连接性要小得多。你把信息传递出去,然后你就在路上。现在,如果其中一个进程失败,那么它很有可能在它停止的地方重新启动,因为通常情况下,该消息仍然位于队列的某个位置,等待新进程获取它。整体时间可能会更长,但它是一个更强大的系统。
介意这不是万能的,异步架构存在很多缺陷,但这种健壮性是RPC和消息系统之间的主要区别。
相关问题
- 1. 什么是消息传递?
- 2. 消息传递和方法调用有什么区别?
- 3. 什么是OOP中的消息传递?
- 4. IPC使用数据库共享数据而不是消息传递有什么优点和缺点?
- 5. 消息传递方案
- 6. RabbitMQ同步消息传递的优缺点
- 7. PHP在页面之间传递消息
- 8. 面向方面编程(AOP)有什么缺点?
- 9. SCTP与无序消息传递相比,有什么优势?
- 10. 虽然我没有使用Firebase云消息传递,但缺少云消息传递权限
- 11. CORS在跨域消息传递方面的优势
- 12. ZMQ消息传递特定端点
- 13. 传递消息到DLL的入口点
- 14. 在python中传递消息
- 15. 在消息传递捆绑
- 16. Android消息传递
- 17. RPC安全信息缺少
- 18. 在消息传递(MPI)MPI_SEND和recv “什么等待”
- 19. 为什么通过refrance传递在PHP中的通知消息?
- 20. 将参数传递给AsyncTask构造函数有什么优点/缺点?
- 21. ConcurrentHashMap有什么缺点吗?
- 22. VistaDB有什么缺点
- 23. Typed DataSet有什么缺点
- 24. Apache Wicket有什么缺点?
- 25. std :: reverse_iterator有什么缺点?
- 26. H264有什么缺点?
- 27. Firebase消息传递错误:消息传递/权限被阻止
- 28. windows-ce中有哪些消息传递技术可以保证消息传递?
- 29. 通过引用传递的缺点是什么?
- 30. 有多重遗传的优点和缺点是什么?
链接似乎被打破。你知道在哪里可以找到文件吗? – SteinNorheim 2011-05-03 07:13:26