In order to make things more concrete, could we line up at least 3 use cases that involve ebMS-level routing?
I'll start with the following one:
General business-level description:
- A large number of "branches" (e.g. from of a global business) e.g. in the thousands across the world, need to send messages to a small set of global, specialized servers. The servers are selected based on eb:Service/eb:Action content. They never need to get anything back from these servers, except some signals (errors, receipts).
Topology:
- networked gateways model. Each branch has its ebMS MSH. Branches are grouped in many regional clusters with each cluster sharing the same immediate (Gateway)intermediary. Other intermediaries might be involved before the message reaches its destination MSH for this Service provider.
Routing function:
- from Branches to the Service providers: based on ebMS header content: eb:Service/eb:Action.
Communication constraints:
- Branches are not addressable. Can only push, or pull. The branches only use One-way / Push MEPs for invoking the servers. Need to pull the "Signals".
- every week, new branches are created, some disappear.
Jacques