Erlang OTP

Application
Supervisor
worker(gen_server, gen_event, gen_fsm)

陷阱:
http://erlang.org/doc/efficiency_guide/commoncaveats.html

迁移到Erlang学习步骤:
语法的学习,容易
阅读开源项目代码,进阶
掌握调试、性能调优工具,进阶
理解Erlang虚拟机工作原理(熟悉操作系统原理)

通用服务器(gen_server)
服务器框架 + 回调模块
回调模块(业务逻辑)是纯粹的顺序代码,没有并发、分裂、发送、接受、注册,意味着我们可以完全不了解底层并发模型的情况下编写客户端-服务器模型。
场景:
维持长连接
管理外部依赖部件(rabbitmq/redis/couchbase/muysql)
RESTful API
Socket.io API

通用事件处理(gen_event)
事件处理器框架 + 回调模块
分离事件生成 和 事件处理。
错误记录器和警报处理器同样遵循事件处理器的模式。
场景:
日志系统(file_handler, syslog_handler)
实时统计系统(一个事件多维度统计)

有限状态机(gen_fsm)
事件->行为->状态
场景:
处理不走复杂的请求(流程复杂,两次交互以后;事件复杂,需要后台异步操作)
海量事务(一次发布千万级个对象;分片,上万个fsm被创建)
fsm本身被监控

监控树(supervisor)
树的上级进程监控下级进程,如果下级进程挂了就会重启它们。

应用程序(application)
.app应用程序信息文件

应用程序监视器(GUI)
appmon:start()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值