0
A
回答
2
顾名思义,RPC(远程过程调用)是一个构建物,以调用一个远程节点上的功能(和得到的结果)。
端口(Erlang中)是一个简单的通信点,甚至没有(一定)到远程节点。您可以使用端口,例如与另一个(非Erlang)程序进行通信。
两个构建有不同的用途。没有人会更好,他们完全不同。如果你愿意,rpc比端口的抽象级别更高,但这并不会让它变得更好或更糟。
相关问题
- 1. RPC和IPC有什么区别吗?
- 2. XML-RPC和SOAP有什么区别?
- 3. Web服务和RPC有什么区别?
- 4. RPC和Browser/Server有什么区别?
- 5. Java RMI和RPC有什么区别?
- 6. Erlang:“include_lib”和“include”有什么区别?
- 7. Golang的net/rpc包和gRPC框架有什么区别?
- 8. 在和Erlang一起使用时,==和=:= =有什么区别?
- 9. Erlang/Yaws中的块和非块流有什么区别
- 10. Erlang中的表达式和语句有什么区别?
- 11. SOAP,XML-RPC和JSON之间有什么区别?
- 12. json-rpc和erlang
- 13. erlang,'catch 1 = 0'和'(catch 1 = 0)'有什么区别?
- 14. 在Erlang中,gen_server:start()和gen_server:start_link()有什么区别?
- 15. Erlang Web网关接口(EWGI)和Webmachine之间有什么区别?
- 16. Erlang中register_name和register函数有什么区别
- 17. 有什么区别`和$(Bash中有什么区别?
- 18. 有什么区别? :和||
- 19. &&和||有什么区别?
- 20. “/”和“/ *”有什么区别?
- 21. 有什么区别:。!和:r!?
- 22. ==和===有什么区别?
- 23. Appender和〜有什么区别?
- 24. $ @和$ *有什么区别?
- 25. is和=有什么区别?
- 26. #.00和#。##有什么区别?
- 27. `==`和`is`有什么区别?
- 28. '=='和'==='有什么区别?
- 29. /和/#/有什么区别?
- 30. | 0和~~有什么区别?
@why不是一个真正的更高的抽象层。一个rpc,虽然是一个NIF,就像一个*函数调用*,而一个端口的行为像一个*进程*。 rpc是顺序的并且阻塞,而端口是并发的和非阻塞的。它告诉你什么时候你会用另一个。 – rvirding 2013-03-18 07:59:12
你一般是正确的。然而,有些人认为同步函数调用是一个更高的抽象,因为并发是一个可以抽象的恶意细节。 – Matthias 2013-03-18 08:17:24
视图考虑并发稍显陌生一点是什么Erlang是一回事,当然容错性。 – rvirding 2013-03-18 08:45:37