上周Apache Camel 2.11发布了。 这篇博客文章总结了最引人注目的新功能和改进。 有关详细说明,请参见Camel 2.11发行说明 。
1)新组件
与往常一样,每个新发行版都包含许多新组件,这些组件由我们庞大的用户群贡献。 谢谢你们。 例如,有camel-cmis可以与内容管理系统(例如Alfresco)或Apache Chemistry支持的任何系统集成,这就是我们在camel-cmis中使用的系统。 我们还获得了一个新的camel-couchdb,用于与我们的Apache CouchDB项目集成。 也很
退出的是新的骆驼 -elasticsearch组件,以与出色的elastichsearch项目集成。
在HAWT新项目hawtio我们也正在与各地的日志聚合和分析elastichsearch一些伟大的新的东西,有一个闪亮HTML5图形用户界面使用Kibana 。 如果尚未看到hawtio,请确保将其签出。
然后, 詹姆斯·斯特拉坎(James Strachan)创造了新的camel-rx组件,以像埃里克·迈耶 ( Eric Maijer)所说的那样,将骆驼与Netflix的Reative Extensions(RX)库完美地集成在一起。 而且,当我们也获得Java8时,这将成为现实。
然后,我创建了新的camel-servletlistener组件,以允许在没有其他依赖项的Web应用程序中引导Apache Camel应用程序。 通常,人们将需要使用Spring或其他库来执行此操作。 为了在示例中进行演示,我们有一个新的servlet-tomcat-no-spring示例。 我的博客文章– 没有Spring的Camel Web应用程序 ,今年早些时候也介绍了这项新功能。 对于即将到来的Camel 2.12,我们将使用新的blueprint-web模块研究一个替代示例,该模块允许类似Spring XML的配置,但只有两个JAR作为依赖项(blueprint-noosgi,blueprint-web)。 这很不错,我们已经使用它hawtio项目从蓝图XML文件轻松引导hawtio Web应用程序。
Scott Sullivan加强并为仅依赖于JMS API的轻量级JMS组件创建了新的camel-sjms组件。 预计该组件将在即将发布的版本中得到进一步改进和强化。 camel-sjms组件不是现有的camel-jms组件的一对一替代。 它们是两个独立的组件。 我们希望自由使用camel-sjms来实现我们认为最需要的功能,并且还要避免Spring JMS公开的许多选项,从而也逐渐渗透到camel-jms中。
我们还有一个用于与Redis集成的新组件,即camel-spring-redis组件。 去年,我创建了camel-urlrewrite组件,该组件使人们能够进行骆驼路由以使用URL重写来代理HTTP服务。 我以前也对此写过博客 。
我们还创建了一个新的控制总线组件 ,该组件允许您将消息发送到控制总线端点以控制路由。 这可能使人们更容易启动/停止骆驼路线。 该组件有望在将来得到改进,因此例如您也可以获得性能统计信息和其他信息。
2)SQL组件现在也可以使用
SQL组件已得到改进,因此您现在也可以使用。 这使您可以从表中提取新数据并以骆驼路线进行数据路由。 我们创建的新的camel-example-sql最好地说明了这一点。 哦,我们还增加了在SQL查询中使用命名参数的支持。
3)Groovy DSL
由于社区的贡献,Camel的Groovy DSL已被彻底检修。 DSL现在完全是最新的,并使用了Groovy'sh风格,使其更像Groovy。 我们还添加了新的Camel Maven原型来创建新的Camel groovy项目。
4)CDI改进
在开发骆驼2.11的早期阶段,我们致力于改进骆驼cdi组件。 我们尚未到位,但朝着正确方向迈出了一大步。 我们还等待Apache DeltaSpike项目做一些新的发布,以便我们完成最后的部分。 因此,希望在以后的发行版中也会对此进行改进。
5)骆驼网秤更好
我们还致力于提高骆驼网络组件的速度。 最引人注目的网络生产商现在汇集渠道以供重用。
6)JAXB控制名称空间前缀
对于陷入XML领域并使用JAXB的人们,我们使控制名称空间前缀变得更加容易,因此您100%可以控制正在使用的前缀名称。 这样可以使XML符合命名风格,或者必须使用特定的前缀名称; 通常,如果旧版系统希望对前缀名称进行硬编码。
7)吉斯3.0
喜爱Guice的人会很高兴听到我们已经升级骆驼-guice以按原样使用Guice 3.0。 使用Guice 1.x时需要的旧guicyfruit依赖项现在已消失。
8)积压跟踪
我们引入了一个新的积压跟踪器 ,该工具允许工具在运行时按需跟踪Camel消息。 Apache Karaf / ServiceMix有一个新的camel-backlog-tracer命令,它使您可以在运行时跟踪正在运行的Camel应用程序上的消息。 您甚至可以启用谓词过滤器,以仅跟踪匹配的消息等。
9)OSGi升级
如果您使用骆驼蓝图组件,则Apache Camel 2.11现在需要OSGi 4.3和Apache Aries 1.0。 这意味着您应该使用Apache Karaf 2.3或更高版本作为容器。
10)杂项
我们对Apache Camel的启动进行了一些改进,现在在调用类似OGNL的表达式时,简单语言的运行速度也更快。 我们禁用了类型转换器利用率统计信息,因为在重负载下会对性能产生轻微影响。 而且,当我们通过带有临时队列的JMS进行请求/答复时,我们设法让camel-jms组件重新创建了临时队列,并且连接已经重新连接(例如,自动自我修复)。 camel-cxfrs组件具有更简单的绑定,因此更易于使用。
和往常一样,我们有大量的错误修复,较小的改进和新功能。 有关完整的详细信息,请参见发行说明 。 可以从Apache网站下载Apache Camel 2.11,并且Maven用户可以从maven Central获得它。 Camel团队现在正在忙于Apache Camel 2.12的开发 ,我们在那里有一些有关Camel组件的改进文档的新工作。
翻译自: https://www.javacodegeeks.com/2013/05/apache-camel-2-11-released.html