有人对 akka-camel 和 scalaz-camel-akka 进行过评估吗?我喜欢 scalaz 带来的功能性方法,并且使用过一些 scalaz-camel-akka,但没有真正使用过 akka-camel。
我会对一些比较点非常感兴趣。
最佳答案
有关使用 Camel、akka-camel 和 scalaz-camel 组合路由的一般比较,请参阅 this presentation幻灯片 47-55。
使用 akka-camel,您可以使用 actor 来
- 使用来自 Camel 端点的消息
- 向 Camel 端点生成消息
- 并在两者之间路由/处理消息(即,您构建基于参与者的消息处理路由)
akka-camel 的主要目的是在 Camel 端点和参与者之间提供连接,以异步交换消息(并且是非阻塞的,如果端点支持的话)。为了处理端点之间的消息,您需要手动连接参与者,而不是使用 Camel DSL 组合消息处理器。
scalaz-camel-akka 模块(scalaz-camel 的)用于从 scalaz-camel 路由中与 Akka actor 交换消息。它允许您使用功能性 DSL 将 Akka 参与者集成到 scalaz-camel 路由中。你甚至可以一起使用 akka-camel 和 scalaz-camel-akka,例如:
- 使用 scalaz-camel 路由开始消息处理
- 使用 scalaz-camel-akka 的(功能性)DSL 将消息发送给 Actor
- 与 Actor 进一步处理消息,最后
- 使用 akka-camel 将消息发送到端点
如果您对有状态消息处理有特殊要求或想要扩展您的集成解决方案,请仔细查看 akka-camel。
关于scala - akka Camel vs scalaz Camel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9155670/