Riad,
Sounds like using a h/w load balancer to distribute HTTP requests to multiple IS instances would address both load distribution and failover. What requirements lead you to include the two-broker “nodes” in your architecture?
I agree with Rob; unless you need the broker’s pub/sub or asynchronous processing features, adding it to the mix increases complexity unnecessarily.
The real challenge comes when one of your IS services (or the server on which that service is running) fails while processing some unit of work.
In order to restart and complete that transaction on another server, you would have had to have saved the state of the transaction along the way in some manner and be able to determine that the transaction has failed and needs to be restarted on one of the other servers.
If you are using Modeler’s Process Runtime (PRT) much of this is done for you, otherwise you will need to create the needed transaction management utilities to save state at various checkpoints, start and end transactions, restart failed transactions, etc.
Mark
PS: Great to hear from you again, Rob!
#webMethods-Architecture#Integration-Server-and-ESB#webMethods-General#webMethods