使用Scala和Apache Camel时是否存在已知问题?

时间:2010-11-04 16:23:48

标签: java scala apache-camel

我知道Camel支持Scala DSL。除此之外

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

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

  • 这些问题存在哪些变通方法(使用Java除外)?

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

3 个答案:

答案 0 :(得分:8)

Akka提供稳定的Scala-idiomatic Camel integration

  

akka-camel模块允许演员,   无类型的演员和键入的演员   通过一个伟大的接收和发送消息   各种协议和API。这个   部分简要概述了   akka-camel背后的一般想法   模块,其余部分进入   细节。除了原生   Scala和Java actor API,演员可以   现在与其他人交换消息   系统超过大量的protcols   和HTTP,如HTTP,SOAP,TCP,FTP,   SMTP或JMS,仅举几例。在   时刻,大约80个协议和   支持API。

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

答案 1 :(得分:1)

与此同时,一个相对简单的Scala DSL has been developed for Camelthat should have the functionality of the Java DSL

要确定您是否切合实际,请考虑:
  - 语言的 IDE支持的质量
  - Scala语言的复杂性   - Scala / Java语言的流行度   - DSL扩展可能性。在Scala中,应该可以(使用一些Scala魔法)来扩展DSL(添加额外的DSL元素)

如果您决定尝试一下,如果您与Apache Camel社区分享您的印象,那就太棒了:  code readabilitycode maintainabilitycode efficiencydeveloper satisfactioncode size"man-days"的数量。

答案 2 :(得分:0)

从那时起(2010-2011),现在(2016年9月)最近一项以Akka Streams Integration命名的计划,代号 Alpakka

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

请参阅" akka/akka-stream-contrib"。