4 Replies Latest reply on Apr 26, 2014 4:47 AM by davsclaus

    Should services be deployed in the ESB

    vincent.crepin

      Hello all. We are migrating our architecture to SOA progressively and have positioned Fuse as our ESB to simplify integration with the diverse legacy systems and packages that we have.

       

      My question is simple: should newly created services be deployed to the ESB container ? I tend to favor deploying our services to another plateform (Tomcat in our case) and use the ESB as an integration mediator.

       

      For many reasons:

       

      -we are used to Tomcat and the construction of services in it. OSGI is new for us.

      -the separation of concerns.

      -the scalability. I want to be able to scale the services and the integrations separately. This depends on the topology I know but it's easier when they are separated de facto.

      -the single point of failure that it represents (depending on the topology of course)

      -the tendency that developers will have to mix and bundle all together if everything is deployed to the ESB (for example Camel and business logic)

      -the skills required to work with all these new tools in the case we need to hire new people.

      -the fact that in some of our divisions java is not used as the programming platform so the separation is mandatory for these cases and I would like the guiding principles to be the same for all.

       

      Of course my way of seeing things implies that services will always be accessed using a remote call (REST in our case) but my experience has shown me that well designed services (granularity) are consumed remotely with no problem.

       

      Thank you !