erlang浅谈(4)-OTP
来源:互联网 发布:finale 软件 编辑:程序博客网 时间:2024/06/05 23:08
1. OTP
OTP把分布式应用开发的一些常用场景,进程依赖管理,反应式,状态机,事件驱动模式框架化;另外,提供了一个分布式存储。
1.1. 框架
1. supervisor
监控树。a) 配置要管理进程们启动参数
进程的所处模块,启动函数(也支持匿名函数),启动参数
b) 定制子进程的重启策略
- l 当前进程挂掉了重启间隔时间
- l 指定时间内重启最大频率
- l 重启时是重启自己 || 所有的进程 || 配置时排在当前进程之后
2. gen_server
反应式框架。自身一个进程。
支持同步的call和异步的cast消息投递,也支持Pid!Message的原语方式(这点可以让其跟很多异步接口对接起来)。
3. gen_fsm
有限状态机(本身没有状态,只能是有限)。自身一个进程。
State(S) x Event(E) -> Actions(A), State(S')
发送消息给该进程,它会回调{CurrentStateName}/2函数,CurrentStateName就是当前状态;如果是调用all_state相关的接口,会回调专门的handle_event等相关函数。
4. gen_event
消息中心。
运行的过程:
a) 启动交换器进程,监听指定消息
b) 注册消息回调
c) 发送消息
d) 交换器进程回调注册的模块相应接口
1.2. mnesia
分布式的数据库管理
1. 支持多个列
2. 支持多个副本
副本的策略有:
- ram (所有数据都在内存)
- ram_disk(数据存在内存和磁盘)
- disk(数据只放在磁盘)
3. 支持表分片
4. 使用时不用指定副本位置
自动选择合适的副本
限制
处理大文件有一定的性能问题
- erlang浅谈(4)-OTP
- Erlang/OTP 监督者(Supervisor)
- Erlang OTP学习(2):gen_event
- 业余研究 erlang /OTP
- Erlang OTP 自定义behaviour
- erlang otp 自定义behaviour
- Erlang OTP 热更新
- ERLANG OTP源码分析
- 理解Erlang/OTP - Application
- erlang杂记四---otp
- Erlang/OTP 构建 Application
- 理解Erlang/OTP Supervisor
- Erlang OTP编译安装
- Erlang OTP学习计划
- Erlang/Otp gen_server terminate
- Erlang中的OTP简要
- Erlang otp 源码结构
- Erlang OTP应用组织形式
- AT91Bootstrap1.16第二阶段C程序详解之一
- hdu acm steps 2.2.3
- 进制转换
- 插件23:检查链接地址
- 邮箱收件人效果(自动填充)
- erlang浅谈(4)-OTP
- 函数调用 堆栈
- 关于时间一系列类的说明和用法
- 音乐网
- hdu acm steps 2.2.4
- 长文章分页+fck修改分页符
- android使用http协议实现文件的上传
- hdu acm steps 2.2.5
- 各种数据库默认端口汇集