You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Bruce Snyder <br...@gmail.com> on 2008/03/27 16:27:59 UTC

Re: [JS] Positioning of ServiceMix vs Synapse

On Thu, Mar 27, 2008 at 7:39 AM, Paul Fremantle <pz...@gmail.com> wrote:

>  I'm completely biased (I'm the Chair of the Synapse committee at
>  Apache), so take what I say with that background.
>
>  1) You are completely right about the article. It is wrong - Synapse
>  is an ESB. In fact the article was wrong 2 years ago too, but this was
>  part of the "politics" around the Synapse startup that is now long
>  over.
>
>  2) ServiceMix has JBI support, which Synapse doesn't. If you want or
>  need JBI then Synapse is out. However, we believe that Synapse made
>  the right choice about that, and in fact SMix is moving away from JBI
>  in SMix 4.0 (moving JBI outside the core).

A slight correction here. ServiceMix 4.0 is still being built out and
it continues to provide JBI support. In addition to JBI, it also
provides support for OSGi bundles and the ServiceMix 4 runtime
platform is based on OSGi.

>  3) Synapse has significantly better performance in my experience.
>  (http://wso2.org/library/2259) Synapse has a streaming and completely
>  NIO, async-based model which means it scales very high (>2000
>  concurrent connections in our tests)

ServiceMix is also highly scalable. ServiceMix can easily be
distributed and clustered to provide scalability, load balancing and
fault tolerance. ServiceMix utilizes JMS semantics via Apache ActiveMQ
which provides an incredible amount of scalability, throughput as well
as ease of use and a wide range of connectivity including clients for
Java, C/C++, C#, Perl, PHP, Python, Ruby, Javascript, Delphi, Pike,
Smalltalk and more.

>  4) Synapse has a very simple configuration model and a very simple set
>  of re-usable "mediators" that means you can get started very quickly
>  without having to learn the JBI model. If you want a graphical UI to
>  help configure Synapse then there is another OSS project (WSO2 ESB)
>  which adds that.

Each component configuration in ServiceMix is a Spring Framework
configuration which makes it incredibly easy to use and highly
flexible as well as easy to extend and add features via dependency
injection.

>  5) SMix has a slightly larger set of connectors and adapters, but
>  Synapse is catching up quickly. This site: http://esbsite.org/ is a
>  community site for people to share Synapse mediators, configs, etc.

This is one of the big selling points of JBI. JBI is an open
specification for which multiple vendors have provided
implementations. Because it is based on a spec, switching between the
various implementations requires minimal effort. Additionally,
adherence to an open specification provides a much wider universe of
components that can be used. A direct benefit of this is that JBI
compliant components from other vendors can be deployed in ServiceMix,
dramatically expanding the amount of connectivity available in
ServiceMix. As an example, below are lists of components (binding
components and service engines) that are available:

http://servicemix.apache.org/components-list.html
http://wiki.open-esb.java.net/Wiki.jsp?page=Jbicomps
http://petals.objectweb.org/downloads.html#component

And as the number of JBI components continues to increase, so does the
connectivity of ServiceMix.

Additionally, there are multiple vendors who provide Eclipse-based IDE
tooling for ServiceMix including:

http://www.eclipse.org/stp/
http://open.iona.com/wiki/display/ProdInfo/FUSE+Eclipse+Tools
http://www.spagic.com/
http://sopera.de/en/products/sopera-servicemixtools/
http://www.chainforge.net/

These vendors continue to improve their tooling and expand the choice
of how to develop integrations with ServiceMix.

Moreover, I have been involved with many, many ServiceMix
implementations at various companies all over the world; unfortunately
I'm not able to call them out by name. These companies come from a
wide range of industries throughout the world, some of which are
Fortune 50 companies. Think of industries such as financial, banking,
telecommunications, IT, retail, aerospace, manufacturing, gaming,
travel, e-commerce, government agencies, etc. These implementations
run the gamut of use cases. Some include an incredible amount of
transactions per day while others don't do a tremendous number of
transactions but the value of each transaction is much higher. There
are even multiple use cases where vendors are using ServiceMix as the
base for their own product (in a sort of OEM style of use). There are
a wide range of ServiceMix implementations out there already and the
growth continues to increase steadily.

If you'd like more information on ServiceMix or ActiveMQ, please let me know.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

Apache ActiveMQ - http://activemq.org/
Apache Camel - http://activemq.org/camel/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/

Blog: http://bruceblog.org/