Actor模型

什么 是Actor模型

Actor 模型是个“古老”的东西,是1973年就提出的一个分布式并发编程模型。Actor模型在erlang语言中得到广泛支持和应用(顺便说一下,想要学习并发编程,erlang是首选)。目前java中
也出现了很多支持actor模型的库:akka、killim、jetlang等等。

Actor模型原理

Actor模型=(数据+动作)+消息。
Actor模型内部的状态由自己的动作来维护,外部线程不能直接调用对象的动作,也不能访问,必须通过消息才能触发动作,可以说,Actor模型是面向对象模型在并发编程领域的扩展。
使用Disruptor这样无锁队列我们也可以自己实现简单的Actor模型,让一个普通对象与外界的交互调用通过Disruptor消息队列实现,其本质是通过增加请求的缓冲区并异步处理来增加响应速度。

缺点

尽管Actor模型可以显著提高系统的并发,但在使用Actor模型过程中仍可能会碰到很多问题。典型的问题有:
* 死锁问题
* 队列溢出问题
* 细粒度控制问题。由于多个actor并不共享状态,仅通过消息传递来进行交流,所以不太适合实施细粒度的并行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值