2010-11-04 45 views
6

我知道有一个支持骆驼的Scala DSL。除此之外,使用Scala与Apache Camel存在已知问题吗?

  • Scala为基于Camel的项目完全替换Java(语言)是否现实?

  • 已知哪种已知问题存在?

  • 这些问题存在哪些解决方法(除了使用Java)?

我主要是寻找更少的代码。

回答

8

Akka提供稳定的Scala-idiomatic Camel integration

的阿卡驼模块允许演员, 非类型化的演员和类型的演员 接收并在一个伟大的 多种协议和API发送消息。这 部分简要介绍了模块的背后的一般想法,其余部分进入 的细节。除了原生的斯卡拉和Java演员API之外,演员们现在可以通过大量的协议和其他的 系统与SMTP,如SMTP,JMS等API或API进行交换消息。在 时刻,支持大约80个协议和 API。

除此之外,我确定这个替换是可能的,因为一个良好的互操作性,并且几乎没有任何Java特有的Scala特定问题。例如,用于从Camel端点发布/消费的Akka Actor是基于java.util.concurrency,我能想到的唯一问题是库中的一个可修复的错误。

1

在此期间相对简单的Scala DSL has been developed for Camelthat should have the functionality of the Java DSL

,以决定是否对你的现实,考虑:
- Scala语言复杂
- - 斯卡拉/ Java语言普及
- DSL扩展IDE支持为语言
质量可能性。在Scala中,它应该有可能(通过一些Scala魔术)来扩展DSL(添加额外的DSL元素)

如果您决定尝试一下,如果您与Apache Camel社区分享您的经验将会很棒您的印象如下: code readabilitycode maintainability,code efficiency,developer satisfaction,code size,号码为"man-days"

0

从那时起(2010-2011),现在(2016年9月)最近为Akka Streams Integration命名,代号为Alpakka

我们相信Akka Streams可以成为构建Apache Camel的现代替代品的工具。这不会在一夜之间发生,这是一个要求社区加入我们这一使命的武器。骆驼的最大资产是其丰富的endpoint components。我们希望看到为Akka Streams开发类似的端点。

请参阅“akka/akka-stream-contrib”。