首页 文章

构建基于Actor的系统的设计模式/最佳实践

提问于
浏览
62

我正在努力寻找任何适当的链接来设计模式,最佳实践或良好的基本架构原则,这些原则应该用于构建基于Actor的应用程序 . 我知道的那几个是:

博客文章,文章,WIKI,指南

论文

由Joe Armstrong撰写

书籍

菲利普哈勒和弗兰克索默斯

实施

  • Akka Framework(Scala中的actor的替代实现,具有多个Erlang行为的端口以及许多其他针对actor的重新模式)

  • Scalaz Actors(演员的作文,策略和承诺)

演讲

达勒舒马赫

来自highscalability.com的示例

  • Simple queuing service (SQS) - 此服务提供用于存储消息的互联网规模排队服务 . 分布式actor将工作放在队列中并从队列中取出工作 . 典型用途:集中式工作队列 . 您将作业放在队列中,不同的actor可以弹出队列的工作并在它们获得CPU时间时处理它们 . 部分可扩展性 . 有许多 生产环境 者和消费者 . 你不担心 . 队列分布在多台计算机和多个数据中心 .

3 回答

  • 0

    这与previous question有关,如果不完全相同的话!

    这不是一个简单的问题,因为 actor model 并发允许构建许多不同类型的应用程序,从有状态的单VM应用程序(具有几个单独的actor类)到成千上万个actor类实例的无状态集群 .

    然而,核心原则是相同的:

    • 永远不要暴露演员的状态

    • 仅通过传递不可变消息进行通信

  • 6

    几周前我在Scala上发布了一个关于learnings of actor development的博客 . 根据几年的范例经验,这是一个最佳实践和要避免的事情的帖子 .

  • 19

    “反应设计模式”一书正在曼宁制作 .

    见:https://www.manning.com/books/reactive-design-patterns

相关问题