scala - 在集群节点上运行的 Akka Streams

标签 scala akka akka-stream akka-cluster

我试图理解 Akka Streams 的缩放部分,我在这里看到了各种回复,但仍然无法理解此功能是如何实现的。

根据我的理解,有 ActorPublisher/Subscribers 旨在与流交互,但同时它表示这些不能是远程的。

我将如何实现能够将 akka 集群与流一起使用?我是否必须让 GraphStage 将其工作“外包”给远程参与者?或者 graphStage 本身可以在集群节点上运行吗?

我的用例是有一个管道,其中包含几个带有连接和合并的繁重计算阶段,其中一些阶段可能需要分布。

更新
根据这个Crawling the Web with Akka Streams我看到单个图不能跨越多个集群。在这种情况下,水平缩放的方式是什么?

最佳答案

akka-streams 还不支持集群。我建议看Apache Kafka如果您需要一些集群解决方案,作为传输的中间件,以及 reactive-kafka .但是,当然,您可以使用 actor 实现您自己的传输层并在 Akka 集群中运行它。

关于scala - 在集群节点上运行的 Akka Streams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696470/

相关文章:

scala - Swagger 将 Option[Int] 建模为 Object,而 Option[String] 被正确建模为字符串

scala - 为什么 Scalaz 会出现在我项目的 API 文档中?

design-patterns - 什么是计算机科学中的隔板?

java - Http Websocket 作为 Akka 流源

scala - Shapeless:元组上的 flatMap 无法编译

scala - 转到相同状态后,FSM actor 未触发 onTransition

architecture - 用于 AKKA Actor 框架?

scala - 了解 NotUsed 和 Done

scala - 如何有条件地将消息传递到特定的下一个阶段(以及其他阶段)?

Scala - 为什么无法覆盖父类(super class)的方法