We have been using the messaging system(activemq) in wildfly for our messaging platform in our distributed system. For messaging High Availability(HA), we are following the standard live/backup replication mode. For application HA, we have active/passive wildfly servers.
Now we need to provide geo-redundancy and geo-redistribution for one of our customers. We are planning to follow the below approach. Please suggest/recommend if we are doing things correctly/incorrectly. And any links with this scenarios would be helpful.
In case of Geo-Redundancy, the messaging platform would provide below.
a. Messaging platform would have active/passive ( master/slave) in each of the site A and B. Applications are consuming from site A and applications on site B are down.
Upon failover of only active server in site A, it will be supported by passive in site A.
b. In case of entire site A going down, applications on site B will be up and start consuming from site B messaging platform which is in sync with site A. Active/passive in site A should always be in sync with active/passive in site B.
In case of Geo-distribution, applications are distibuted among site A and site B. the messaging platform would provide below.
Messaging platform in site A and site B will have their own active/master supported by passive/slave on the other site. Active in site A has passive in site B and vice-versa.
Applications in site A consume from active in site A, in case active goes down in site A, applications in site A will start consuming from passive in site B and vice-versa.