Apache的骆驼和其他ESB产品 [英] Apache Camel and other ESB products

查看:181
本文介绍了Apache的骆驼和其他ESB产品的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

哎,结果
如果我们有Apache的骆驼为什么要使用其他解决方案,比如Apache ServiceMix的和Mule?结果
有什么Apache的骆驼不能做比较,这些产品呢?结果
何时使用骡子/ ServiceMix的,以及何时使用骆驼?

Hey,
If we have Apache Camel why to use other solutions like Apache ServiceMix and Mule?
Is there something Apache Camel can't do comparing to these products?
When to use Mule/ServiceMix and when to use Camel?

推荐答案

Apache的骆驼是实现企业集成模式库(EIP)。而它可以使用弹簧作为其IOC框架,它​​甚至不是依赖于弹簧,因此它完全是独立于平台的。这是只是一个库。所以,你可以运行任何JVM环境,例如简单的JVM,servlet中,EJB,OSGi的。它不与任何的一个容器,例如骡的好处(或开销)带来。它,在我看来,这方面的关注更清洁的分离。

Apache Camel is a library that implements enterprise integration patterns (EIP). While it can use Spring as its IOC framework, it is not even dependent upon Spring, so it is completely platform independent. It is "just" a library. So you can run it any JVM environment, e.g. simple jvm, servlet, ejb, osgi. It does not bring with any of the benefits (or the overhead) of a container such Mule. It has, in my opinion, cleaner separation of concerns in this area.

骡也可以嵌入在不同的环境中,但我认为骡既有优点及其EIP库耦合到它们的容器的缺点。当你部署骡子servlet或EJB环境里面,你真的要执行所有的骡子容器的行李?我不是骡子专家,我想你大概可以花的功夫比较温和的金额,并清理掉一些多余的能力。 (请注意,这不是在所有情况下不好的能力,如果你正在运行嵌入到另一个容器内它只是多余的。)

Mule can also be embedded in different environments, but I think Mule has both the advantages and disadvantages of coupling their EIP library to their container. When you deploy Mule inside a servlet or ejb environment, do you really want to carry all of that baggage of the Mule container? I am not a Mule expert, and I think you can probably spend a relatively modest amount of effort and clean out some of the redundant capability. (Note this is not bad capability in all cases, it is just redundant if you are running embedded inside another container.)

的Apache ServiceMix的是使用骆驼来实现EIP作为ESB的基础OSGi容器。尽管历史开始凭借其在JBI根ServiceMix的,它已经从JBI搬走,并已演变成(IMO)一个很好的分层体系结构结合同类最佳的Apache CXF,骆驼,和的ActiveMQ在OSGi容器。这里的主要价值是不是真的ServiceMix的和JBI支持,但潜在的OSGi容器的标准的耦合到成熟的Apache传输像CXF的Web服务和ActiveMQ的JMS的。 OSGi是一个成熟的标准,提供了解决相同类型的.NET出现之前困扰微软的DLL地狱的容器。而既不.NET也不OSGI解决根本问题的基本的复杂性,它们至少为解决它的装置。 OSGI有其他好处,但是从产品的选择角度的标准的基于容器是主要的,而骡子(和Java一般)并没有解决其基本特征是依赖管理。

Apache ServiceMix is an OSGI container that uses Camel to implement EIP as the basis of an ESB. Although ServiceMix historically started with its roots in JBI, it has moved away from JBI and has evolved into (IMO) a nice layered architecture combining best of breed Apache CXF, Camel, and ActiveMQ in an OSGI container. The main value here is not really ServiceMix and its JBI support, but the underlying OSGI container standard coupled to proven Apache transports like CXF for web services and ActiveMQ for JMS. OSGI is a mature standard that offers a container that addresses the same types of "DLL" hell that plagued Microsoft before the advent of .NET. While neither .NET nor OSGI solves the essential complexity of the underlying problem, they at least provide a means for addressing it. OSGI has other benefits as well, but from a product selection perspective the standards based container is primary, and its essential feature that Mule (and Java in general) does not address is dependency management.

一些重要的事情需要注意的骡子与Apache社区比较。骡子是像红帽在这个意义上,虽然它是一个开放源码许可它是不是真的在我看来,一个开放的社会。任何人都可以参加的Apache,而MuleSoft拥有骡子社区和最终的路线图。其次,虽然骡社区可以说是pretty活跃,我认为Apache社区大得多(自然如此,因为它不是一个封闭社区)。这两种方法同时具有加分和短处。一个积极的Apache的方法是有根据骆驼,CXF,ActiveMQ的,和OSGI ESB的多个供应商。例如,在拓蓝没有ServiceMix的JBI历史相同的核心技术,提供了一个ESB。这既有加分和劣势Apache社区内,但真正的问题是要突出Apache和骡子之间的差异。你不会找到在骡社区multilple供应商。所以IMO一个Apache ESB像拓蓝或ServiceMix的是一个更广泛和更具包容性,最终有竞争力的社会不是一个封闭的社区像骡子。

Some important things to note in comparing Mule with Apache communities. Mule is like Redhat in the sense that although it is an open source license it is not really in my opinion an open community. Anyone can participate in Apache whereas MuleSoft owns the Mule community and the final roadmap. Second, although the Mule community is arguably pretty active, I think the Apache community is much larger (and naturally so since it is not a gated community). Both approaches have both plusses and minuses. One positive to the Apache approach is that there are multiple vendors for ESB's based on Camel, CXF, ActiveMQ, and OSGI. For example, Talend offers an ESB on the same core technologies without the ServiceMix JBI history. This has both plusses and minuses within the Apache community, but the real point is to highlight the difference between Apache and Mule. You won't find multilple vendors in the Mule community. So IMO an Apache ESB like Talend or ServiceMix is a broader and more inclusive, and ultimately competitive community than a closed community like Mule.

埃德奥斯特

这篇关于Apache的骆驼和其他ESB产品的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆