erlang消息传递操作符!的位置透明性
来源:互联网 发布:mac电脑删除软件 编辑:程序博客网 时间:2024/05/16 10:18
不同于操作系统对pid的定义是一个数字, erlang的pid是一个结构化的对象, 包含node id, process id, serial 三个元素(1),
实现分布式位置透明的根本就在于pid的设计保证其可以是集群唯一的,这样一个pid ! message可以不变的应用在集群中任何一个进程上,
node id位置存放的是dist_entry的索引(2) (自己没看过源码),有了node id就可以通过epmd找到对应的node端口(3),
然后连接->握手->认证->发送 (5)
这里还讨论了erlang:send带nosuspend的问题,似乎是上周遇到了tcp:send timeout的问题的答案(4)
(1) Something maybe you don’t know about Erlang PIDs
https://pdincau.wordpress.com/2010/08/30/something-maybe-you-dont-know-about-erlang-pids-2/
http://stackoverflow.com/questions/243363/can-someone-explain-the-structure-of-a-pid-in-erlang/262179#262179
(2) 浅析Erlang分布的核心技术
http://developer.51cto.com/art/200812/100298.htm
(3) epmd manal
http://www.erlang.org/doc/man/epmd.html
(4) erlang send剖析及参数意义
http://blog.csdn.net/mycwq/article/details/42845385
(5) erl_dist_protocol
http://erlang.org/doc/apps/erts/erl_dist_protocol.html#connected_nodes
(6) otp源码(留着以后看)
http://quitbuddy.org/otp_src_R15B01/erts/emulator/beam/erl_node_tables.h
- erlang消息传递操作符!的位置透明性
- Erlang并发机制 – 消息传递
- Golang和Erlang消息传递机制对比
- Erlang并发机制 – 消息传递
- Erlang并发编程之消息传递
- erlang的消息队列
- 部件的透明性
- 透明性
- 分布式数据库系统的透明性
- NGUI的消息传递
- 窗口消息的传递
- SOAP消息的传递
- 数据、消息的传递
- erlang 简单的树操作
- erlang进程间发送消息的性能
- erlang的消息发送和接收
- 《GOF设计模式》—组合(COMPOSITE)—Delphi源码示例:声明管理子部件的操作(透明性设计)
- BBS 设计思路系列 ---- 管理的透明性
- cornerSubPix函数英文介绍
- 在移动开发快捷推广方式
- 淘宝的流氓DLL.调试程序的时候都加载上来.
- ubuntu下配置java环境
- 心情一则0502
- erlang消息传递操作符!的位置透明性
- M文件实现GUIy右键菜单
- 类与对象区别
- [leetcode]Reverse Integer
- Oracle多表连接查询
- QML事件处理--MouseArea
- oc语言注意事项五
- 学习uC/OS II 过程中联想到的可以精简系统内存的地方(待续)
- UBUNTU编译DBVM的步骤及出现问题的解决方案(DBVM-->CheatEngine)