Enterprise Application Mashup Architecting the Future Eugene Ciurana Director, Systems Infrastructure LeapFrog Enterprises, Inc. eugenex@leapfrog.com pr3d4t0r @ irc://irc.freenode.net ##java, #esb, #awk, #security
About Eugene Ciurana 15+ years of experience building mission-critical, highavailability systems infrastructure Not an end-user applications kinda guy 10+ years of Java work Engaged by the largest companies in the world Retail Finance Oil industry Don t forget the evaluation - Thanks! Background ranges from industrial robotics to on-line retail systems ESB deployment experience twice - mission critical!
What prompted this presentation? What is an ESB? How do you select and ESB? How do you integrate existing (Java 1.4, legacy) applications and new technologies? How do you extend ESB functionality through service managers, routers, translators, and filters written in Java? How to integrate the ESB into the environment? How to deploy and monitor ESB applications. Who leads? Open-source or commercial ESBs?
What is an ESB? ESB ::= Enterprise Service Bus. The definition is flexible, but in general it s a conduit for messages of multiple, different formats, between application endpoints, over more than one protocol. Are JMS or MQ ESBs? How do ESBs relate to queuing systems? Comments.
How do you select an ESB? Identify the features that you need based on business and technological requirements Get the vendors to provide in-house trial copies of the ESB. Examples? Download the open-source ESBs and set up an evaluation as well. Evaluate based on your metrics and compare the results Show: Sample evaluation dashboard.
How do you integrate legacy apps with your ESB? A legacy application can be presented to the rest of the application stack as a service, somehow. The legacy application has the ability to import or export data from within itself - formats and protocols? Extending the application minimally to support data import/export as a service. Can you think of any examples?
How do you integrate the ESB into the environment? Stand-alone server: pros and cons. Embedding ESBs into applications. Leveraging an ESB from within an application that ships one. Good ESBs talk to other ESBs, even if they come from another vendor! In general, application integration with the ESB occurs only at the endpoints, using transformers at most.
How do you integrate the ESB into the environment? Connector Connector Application Channel Message Sender Transformers Outbound Router Service Object Component Inbound Router Transformers Message Receiver Channel Application
How to deploy and monitor ESB applications Deployment should be easy and involve as little disturbance as possible to existing applications being integrated into the ESB Monitoring Internal: use JMX, logs, and other tools from both the ESB and the applications External: vendor dashboard, ESB monitoring tool, integration with ProactiveNet, OpenView, Tivoli, or other event-driven monitoring tools Example...
How to deploy and monitor ESB applications External Device PC application Web browser SOAP http http Internet SOAP thesite.com Java 6 Wicket CMS feed Microsite SOAP Mule ESB SOAP Dedicated Store Java 6, Wicket, Tomcat, etc. Cart, session data SOAP SOAP SOAP SOAP SOAP Firewall Mule ESB SOAP,, JMS, MQ, BPEL, JDBC, caching, in-memory CRM JDBC Merchandizin g Tools CMS Content Repository Customer Master ERP Crowd Single Sign-On Active Directory (domain) Custom
Who leads: open-source or commercial ESB? Where do you find the fastest pace of evolution? Standards are less important than getting the job done. What is more important: a vibrant community supporting the ESB, or a large vendor supporting the ESB? Why?
Case study Enterprise Application Mashup using the Mule ESB, on TheServerSide.com Google for: Mule case study It works! is more important than It s standard! or It s from $VENDOR! or It gotz teh features! Ease of implementation, extension, and deployment should be your goal Don t live for ESB; if it s working, it should be almost invisible TCO
Q&A Thanks for coming! http://ciurana.eu/tssjsbarcelona Eugene Ciurana Director, Systems Infrastructure Leap Frog Enterprises, Inc. Don t forget the evaluation - Thanks! eugenex@leapfrog.com pr3d4t0r @ irc://irc.freenode.net ##java, #esb, #awk, #security