我不明白骆驼到底是干什么的。
如果你能用101个单词介绍一下骆驼:
到底是什么?它如何与用Java编写的应用程序交互?它是与服务器一起使用的吗?这是一个独立的项目吗?
请解释一下骆驼是什么。
我不明白骆驼到底是干什么的。
如果你能用101个单词介绍一下骆驼:
到底是什么?它如何与用Java编写的应用程序交互?它是与服务器一起使用的吗?这是一个独立的项目吗?
请解释一下骆驼是什么。
当前回答
这是另一个尝试。
你知道有很多东西,比如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,您需要了解什么是企业集成模式。
让我们从我们可能已经知道的开始:Singleton模式、Factory模式等;它们只是组织解决问题的方法,但它们本身并不是解决方案。当“四人帮”出版他们的书《设计模式》时,他们为我们其他人分析并提取了这些模式。他们为我们中的一些人节省了大量的精力来思考如何优化代码结构。
与“四人帮”一样,Gregor Hohpe和Bobby Woolf撰写了《企业集成模式》(Enterprise Integration Patterns,EIP)一书,他们在书中提出并记录了一组新的模式和蓝图,说明我们如何最好地设计基于组件的大型系统,其中组件可以在同一进程上运行,也可以在不同的机器上运行。
他们基本上建议我们将系统构造为面向消息的——其中组件之间使用消息作为输入和输出进行通信,而不是其他任何东西。它们向我们展示了一套完整的模式,我们可以从中选择并在不同的组件中实现,这些组件将共同构成整个系统。
那么什么是阿帕奇骆驼?
ApacheCamel为您提供了EIP的接口、基本对象、常用的实现、调试工具、配置系统和许多其他帮助程序,当您希望实现解决方案以遵循EIP时,这些帮助程序将为您节省大量时间。
以MVC为例。MVC在理论上非常简单,我们可以在没有任何框架帮助的情况下实现它。但是,好的MVC框架为我们提供了一种随时可用的结构,并且在创建大型MVC项目时,已经考虑到了所有其他需要的“方面”,这就是为什么我们大多数时候都使用它们的原因。
这正是Apache Camel为EIP所做的。这是一个完整的生产就绪框架,适用于希望实施其解决方案以遵循EIP的人员。
简而言之:
当需要连接/集成系统时,您可能需要连接到某个数据源,然后处理这些数据以满足您的业务需求。
为了做到这一点:
1) 您可以开发定制程序来完成这项工作(可能会很耗时,很难理解,为其他开发人员维护)
2) 或者,您可以使用Apache Camel以标准化的方式来实现这一点(它已经为您开发了大多数连接器,您只需要设置它并插入逻辑-称为Process):
骆驼将帮助您:
使用任何来源/格式的数据处理此数据将数据输出到任何源/格式
通过使用ApacheCamel,您将很容易理解/维护/向其他开发人员扩展您的系统。
Apache Camel是用企业集成模式开发的。这些模式帮助您以良好的方式集成系统:-)
在尝试理解ApacheCamel之前,您需要了解的一件事是企业集成模式。并不是每个领域的人都真正意识到了这些问题。虽然你当然可以阅读《企业集成模式》这本书,但了解它们的更快方法是阅读维基百科中关于企业应用程序集成的文章。
如果你已经阅读并理解了主题领域,你将更有可能理解Apache Camel的目的
HTH
这是另一个尝试。
你知道有很多东西,比如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是一个集成框架。它由一些Java库组成,帮助您在Java平台上实现集成问题。这意味着什么,以及它与一方的API和另一方的企业服务总线(ESB)的区别,在我的文章“何时使用ApacheCamel”中进行了描述。