我不明白骆驼到底是干什么的。

如果你能用101个单词介绍一下骆驼:

到底是什么?它如何与用Java编写的应用程序交互?它是与服务器一起使用的吗?这是一个独立的项目吗?

请解释一下骆驼是什么。


当前回答

Camel有助于路由、转换和监控。

它使用Routes;其可以描述为:

当服务总线接收到特定消息时,它将通过任何服务/代理目的地(如队列/主题)将其路由。这条路径称为路线。

例子:您的股票应用程序得到了分析师的一些输入,它将通过应用程序/web组件进行处理,然后将结果发布给所有感兴趣的/注册的成员,以进行特定的股票更新。

其他回答

简而言之:

当需要连接/集成系统时,您可能需要连接到某个数据源,然后处理这些数据以满足您的业务需求。

为了做到这一点:

1) 您可以开发定制程序来完成这项工作(可能会很耗时,很难理解,为其他开发人员维护)

2) 或者,您可以使用Apache Camel以标准化的方式来实现这一点(它已经为您开发了大多数连接器,您只需要设置它并插入逻辑-称为Process):

骆驼将帮助您:

使用任何来源/格式的数据处理此数据将数据输出到任何源/格式

通过使用ApacheCamel,您将很容易理解/维护/向其他开发人员扩展您的系统。

Apache Camel是用企业集成模式开发的。这些模式帮助您以良好的方式集成系统:-)

如果您了解企业集成模式,ApacheCamel是一个实现所有EIP的集成框架。

您可以将Camel部署为web容器中的独立应用程序。

基本上,如果您必须使用不同的协议和技术集成多个应用程序,那么可以使用Camel。

这是另一个尝试。

你知道有很多东西,比如Webmethods、ICAN Seebeyond、Tibco BW、IBM Broker。他们都为企业中的集成解决方案提供了帮助。这些工具通常被称为企业应用程序集成(EAI)工具。

大多数拖放工具都是围绕这些技术构建的,在某些情况下,您必须用Java编写适配器。这些适配器代码要么未经测试,要么测试工具/自动化较差。

就像编程中的设计模式一样,您也有用于通用集成解决方案的企业集成模式。他们因格雷戈里·霍普(Gregor Hohpe)和鲍比·伍尔夫(Bobby Woolf)的同名书而出名。

虽然很可能实现使用一个或多个EIP的集成解决方案,但Camel尝试使用XML、Java、Groovy或Scala之一在代码库中实现这一点。

Camel通过其丰富的DSL和路由机制支持本书中列出的所有企业集成模式。

因此,Camel是其他EAI工具的竞争技术,为测试集成代码提供了更好的支持。由于使用了领域特定语言(DSL),代码简洁。即使是商业用户也可以阅读它,它是免费的,让您更有效率。

假设你创建了一家像亚马逊这样的电子商务公司,你只想专注于销售产品的战略/选择。与亚马逊的送货车队不同,你不需要自己处理从卖家到仓库的货物运输,而是在仓库中对货物进行包装,然后将货物发送给其他城市和客户。你雇了一家公司来做这一切,只需向他们提供你所有仓库位置、车辆类型、交货地点的信息,以及何时做什么的列表。然后他们自己处理,那就是阿帕奇骆驼。一旦你把东西交给他们,他们会把东西从一端移到另一端,这样你就可以自由地专注于其他事情。

在尝试理解ApacheCamel之前,您需要了解的一件事是企业集成模式。并不是每个领域的人都真正意识到了这些问题。虽然你当然可以阅读《企业集成模式》这本书,但了解它们的更快方法是阅读维基百科中关于企业应用程序集成的文章。

如果你已经阅读并理解了主题领域,你将更有可能理解Apache Camel的目的

HTH