Wednesday, January 6, 2010

Why should one use a Service Bus

This is a question often asked in interviews.
Here is a standard short-and-sweet answer:

- standardizing service interfaces
- switching protocols (eg turning an EJB into a WS)
- message transformation
- message routing and/or
- service orchestration = buzzword for "deciding what goes where and in which sequence"
- security
- failover and load balancing
- monitoring (performance, audit, errors)

advantages:
- decoupling
- interface simplification
- service reusability

Supported transports:
HTTP(S), JMS, FTP, File, and E-mail

The message context contains: $header, $body, and $attachments

Communication types:
  • Synchronous request/response
  • Asynchronous publish one-one
  • Asynchronous publish one-many
  • Asynchronous request/response (synchronous-to-asynchronous bridging)
These Transport Providers are available:
SFTP, Email, File, MQ, EJB, Tuxedo, SB, WS, JPD, FLOW, BPEL 10g, JCA, ALDSP





    No comments: