📜  Apache Camel-功能

📅  最后修改于: 2020-10-30 10:03:38             🧑  作者: Mango


看过Apache Camel的概述后,现在让我们深入研究其功能,以了解其提供的功能。我们已经知道Apache Camel是一个开源Java框架,它实质上提供了各种EIP的实现。 Camel通过提供与多种传输和API的连接性,使集成更加容易。例如,您可以轻松地将JMS路由到JSON,将JSON路由到JMS,将HTTP路由到JMS,将FTP路由到JMS,甚至将HTTP路由到HTTP,并连接到微服务。您只需要在两端提供适当的端点即可。骆驼是可扩展的,因此将来可以将更多端点轻松添加到框架中。

要将EIP和传输连接在一起,请使用特定领域语言(DSL),例如Java,Scala和Groovy。典型的Java路由规则可能类似于-

from ("file:/order").to("jms:orderQueue");

该路由规则从订单目录加载文件,创建包含文件内容的JMS消息,并将该消息发送到名为orderQueue的队列。

这是Camel的一些最重要的功能,这些功能对开发Camel应用程序很有用-

  • Camel支持可插拔数据格式和类型转换器来进行此类消息转换,因此将来可以添加新的格式和转换器。当前,它支持几种流行的格式和转换器。仅举几例-CSV,EDI,JAXB,JSON,XmlBeans,XStream,Flatpack,Zip。

  • 骆驼支持可插拔语言以DSL编写谓词。受支持的语言包括JavaScript,Groovy, Python,PHP,Ruby,SQL,XPath,XQuery。

  • Camel支持POJO模型,因此您可以在各个点插入Javabean。

  • Camel通过使用消息传递简化了对此类大型分布式和异步系统的测试。

现在让我们了解Camel的体系结构,看看如何实现各种功能。