Step 4 Defining Distributed ESB Process
- Control vs. Data Flow
- Data flow incorporates both synchronous and asynchronous
message-flow; more general purpose than pure control flow
- Business Process Orchestration
- Typically implies a central orchestration engine
- For distributed ESBs, central orchestration is a
bottleneck; Data-flow processes with a graphical representation
that maps directly to the physical implementation offer greater
flexibility and generality
- Event Warehousing
- Security
- Logging, Tracing & Alerts
- Data format impedance mismatch
- Configuring Business process for failover
- Configuring Business process for performance
Control Vs Data Flow
- Control Flow
![](images/xtactics_esb_implementation26.JPG.pagespeed.ic.hQq619Th5r.jpg)
- Data Flow
![](images/xtactics_esb_implementation27.JPG.pagespeed.ic.VswisWXtrT.jpg)
Business Process Orchestration
- Composition using pre-built services
- Data routing
- Control information
- Data transformation
- Identifying Node Names
- Configuring Service Design time properties
Event Warehousing
Enable at runtime
![](images/xtactics_esb_implementation28.JPG.pagespeed.ic.RnpC2H4gd3.jpg)
Security
Security (Role based Security)
![](images/xtactics_esb_implementation29.JPG.pagespeed.ic.hOE5NeP27f.jpg)
Logging, Tracing & Alerts
![](images/xtactics_esb_implementation30.JPG.pagespeed.ic.hVo2PYgroS.jpg)
Data Format Impedance Mismatch
![](images/xtactics_esb_implementation31.JPG.pagespeed.ic.YGrcyB56jZ.jpg)
Configuring Business Process For Failover
- Multiple node names for Services
- State failover for services
- Server level failover
![](images/xtactics_esb_implementation32.JPG.pagespeed.ic.i7QaVYT-zh.jpg)
Configuring Business Process For Performance
- Identifying Parallel data flows
- Dynamic rerouting of data based on load
- Identifying Heavy-weight services (80/20 Rule)
- Running multiple instances of "heavy weight"
services on different nodes
- Sub-Flows and Sub-Processes for effective business process
execution
- Log/Trace level optimization
- Event tracing optimization
- Service level Load Balancing (static/Dynamic)
![](images/xtactics_esb_implementation33.JPG.pagespeed.ic.LL45nqPSYO.jpg)
Step 5 Deploying ESB Process
- Deployment -what does it mean ?
- Identifying Network Domain/Topology
- Manual Services vs. Auto-Launched Services
- Security issues for Deployment
- Service Development Languages and Platforms
What does it mean?
- Deployment Descriptor
![](images/xtactics_esb_implementation34.JPG.pagespeed.ic.p2u76OjPnO.jpg)
- Remote Deployment of Service and its dependencies
- Remote installation of service dependencies
- Caching
![](images/xtactics_esb_implementation35.JPG.pagespeed.ic.nAV2XYJi-D.jpg)
- Managing Dependencies / Order of installation /Order of
Launch
![](images/xtactics_esb_implementation36.JPG.pagespeed.ic.58V0xQyCbT.jpg)
Identifying Network
Domain/Topology
- Deployment Domain/Nodes
![](images/xtactics_esb_implementation37.JPG.pagespeed.ic.fmBoXQiXwB.jpg)
- Domain/Node Name Alias (Hierarchical Domains)
- Configuration Alias
Manual Vs Auto Launch
Manual Services
- Executed externally to the ESB (Servlets, EJBsetc)
- Combination of managed and unmanaged components
- Managed Components like:
- A Webservice deployed in a Webservice container
- An EJB deployed in J2EE container
- A COM Object deployed in COM+ server
- A CORBA based server Object deployed in an ORB
- Windows NT/2K Service
- Unmanaged Components like:
- Java executable archive
- A C/C++ executable
- Legacy Application running in a mainframe environment.
- A Unix shell program (functioning within a
pipe-and-filter style architecture).
Auto Launched Services
- Native ESB services: managed and launched by ESB
containers
- Auto start/stop and restart of these services
- Connectivity management
- Fine grained monitoring
Security Issues
- Deployment Manager to restrict service deployment
![](images/xtactics_esb_implementation38.JPG.pagespeed.ic.jnhnXCQhI1.jpg)
|