【问题标题】:Design patterns/best practice for building Actor-based system构建基于 Actor 的系统的设计模式/最佳实践
【发布时间】:2011-04-25 07:46:17
【问题描述】:

我正在努力寻找设计模式、最佳实践或良好的基本架构原则的任何体面链接,这些链接应该用于构建基于 Actor 的应用程序。我所知道的少数是:

博客文章、文章、WIKI、指南

论文

书籍

实现

  • Akka Framework(Scala 中 Actor 的替代实现,带有几个 Erlang 行为的端口和许多其他相关的 Actor 模式)
  • Scalaz Actors(演员组成、策略和承诺)

演示文稿

来自 highscalability.com 的示例

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

【问题讨论】:

标签: scala erlang actor


【解决方案1】:

Manning 正在编写“反应式设计模式”一书。

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      这与previous question 相关,如果不是完全 一样!

      这不是一个简单的问题,因为并发的参与者模型允许构建许多不同类型的应用程序,从有状态的单 VM 应用程序(具有几个单独的参与者类)到由数千个参与者类实例组成的无状态集群。

      但核心原则是相同的:

      • 永远不要暴露演员的状态
      • 仅通过传递不可变消息进行通信

      【讨论】:

        猜你喜欢
        • 2010-09-22
        • 2012-04-28
        • 2011-04-23
        • 2015-05-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-24
        • 1970-01-01
        相关资源
        最近更新 更多