Slicing the EDG
Posted
by Antony Reynolds
on Oracle Blogs
See other posts from Oracle Blogs
or by Antony Reynolds
Published on Wed, 20 Aug 2014 02:24:22 +0000
Indexed on
2014/08/20
4:25 UTC
Read the original article
Hit count: 306
/Oracle/SOA Suite
Different SOA Domain Configurations
In this blog entry I would like to introduce three different configurations for a SOA environment. I have omitted load balancers and OTD/OHS as they introduce a whole new round of discussion. For each possible deployment architecture I have identified some of the advantages.
Super Domain
This is a single EDG style domain for everything needed for SOA/OSB. It extends the standard EDG slightly but otherwise assumes a single “super” domain.
This is basically the SOA EDG. I have broken out JMS servers and Coherence servers to improve scalability and reduce dependencies.
Key Points
- Separate JMS allows those servers to be kept up separately from rest of SOA Domain, allowing JMS clients to post messages even if rest of domain is unavailable.
- JMS servers are only used to host application specific JMS destinations, SOA/OSB JMS destinations remain in relevant SOA/OSB managed servers.
- Separate Coherence servers allow OSB cache to be offloaded from OSB servers.
- Use of Coherence by other components as a shared infrastructure data grid service.
- Coherence cluster may be managed by WLS but more likely run as a standalone Coherence cluster.
Benefits
- Single Administration Point (1 Admin Server)
- Closely follows EDG with addition of application specific JMS servers and standalone Coherence servers for OSB caching and application specific caches.
- Coherence grid can be scaled independent of OSB/SOA.
- JMS queues provide for inter-application communication.
Drawbacks
- Patching is an all or nothing affair.
- Startup time for SOA may be slow if large number of composites deployed.
Multiple Domains
This extends the EDG into multiple domains, allowing separate management and update of these domains. I see this type of configuration quite often with customers, although some don't have OWSM, others don't have separate Coherence etc.
SOA & BAM are kept in the same domain as little benefit is obtained by separating them.
Key Points
- Separate JMS allows those servers to be kept up separately from rest of SOA Domain, allowing JMS clients to post messages even if other domains are unavailable.
- JMS servers are only used to host application specific JMS destinations, SOA/OSB JMS destinations remain in relevant SOA/OSB managed servers.
- Separate Coherence servers allow OSB cache to be offloaded from OSB servers.
- Use of Coherence by other components as a shared infrastructure data grid service.
- Coherence cluster may be managed by WLS but more likely run as a standalone Coherence cluster.
Benefits
- Follows EDG but in separate domains and with addition of application specific JMS servers and standalone Coherence servers for OSB caching and application specific caches.
- Coherence grid can be scaled independent of OSB/SOA.
- JMS queues provide for inter-application communication.
- Patch lifecycle of OSB/SOA/JMS are no longer lock stepped.
- JMS may be kept running independently of other domains allowing applications to insert messages fro later consumption by SOA/OSB.
- OSB may be kept running independent of other domains, allowing service virtualization to continue independent of other domains availability.
- All domains use same OWSM policy store (MDS-WSM).
Drawbacks
- Multiple domains to manage and configure.
- Multiple Admin servers (single view requires use of Grid Control)
- Multiple Admin servers/WSM clusters waste resources.
- Additional homes needed to enjoy benefits of separate patching.
- Cross domain trust needs setting up to simplify cross domain interactions.
- Startup time for SOA may be slow if large number of composites deployed.
Shared Service Environment
This model extends the previous multiple domain arrangement to provide a true shared service environment.
This extends the previous model by allowing multiple additional SOA domains and/or other domains to take advantage of the shared services. Only one non-shared domain is shown, but there could be multiple, allowing groups of applications to share patching independent of other application groups.
Key Points
- Separate JMS allows those servers to be kept up separately from rest of SOA Domain, allowing JMS clients to post messages even if other domains are unavailable.
- JMS servers are only used to host application specific JMS destinations, SOA/OSB JMS destinations remain in relevant SOA/OSB managed servers.
- Separate Coherence servers allow OSB cache to be offloaded from OSB servers.
- Use of Coherence by other components as a shared infrastructure data grid service
- Coherence cluster may be managed by WLS but more likely run as a standalone Coherence cluster.
- Shared SOA Domain hosts
- Human Workflow Tasks
- BAM
- Common "utility" composites
- Single OSB domain provides "Enterprise Service Bus"
- All domains use same OWSM policy store (MDS-WSM)
Benefits
- Follows EDG but in separate domains and with addition of application specific JMS servers and standalone Coherence servers for OSB caching and application specific caches.
- Coherence grid can be scaled independent of OSB/SOA.
- JMS queues provide for inter-application communication.
- Patch lifecycle of OSB/SOA/JMS are no longer lock stepped.
- JMS may be kept running independently of other domains allowing applications to insert messages fro later consumption by SOA/OSB.
- OSB may be kept running independent of other domains, allowing service virtualization to continue independent of other domains availability.
- All domains use same OWSM policy store (MDS-WSM).
- Supports large numbers of deployed composites in multiple domains.
- Single URL for Human Workflow end users.
- Single URL for BAM end users.
Drawbacks
- Multiple domains to manage and configure.
- Multiple Admin servers (single view requires use of Grid Control)
- Multiple Admin servers/WSM clusters waste resources.
- Additional homes needed to enjoy benefits of separate patching.
- Cross domain trust needs setting up to simplify cross domain interactions.
- Human Workflow needs to be specially configured to point to shared services domain.
Summary
The alternatives in this blog allow for patching to have different impacts, depending on the model chosen. Each organization must decide the tradeoffs for itself. One extreme is to go for the shared services model and have one domain per SOA application. This requires a lot of administration of the multiple domains. The other extreme is to have a single super domain. This makes the entire enterprise susceptible to an outage at the same time due to patching or other domain level changes. Hopefully this blog will help your organization choose the right model for you.
© Oracle Blogs or respective owner