-
1. Re: Does HornetQ REST interface work in EAP 6.1 cluster?
mgznt Jul 9, 2014 11:53 AM (in response to mgznt)I've worked around the problem by creating a second server-group "single-server-group" with only a single server. The group uses the same "full-ha" profile as the main cluster-server-group. Thus the groups' messaging subsystems are connected and messages are automatically routed to both server groups.
The WAR that contains the REST interface is only deployed on the single-server-group. Now all subscriptions to the REST interface are served by the same host. No more HTTP 405 status codes are returned to the clients. It also means that the REST interface is not clustered, i.e. no load balancing or automatic failover is possible. For us, that's an acceptable tradeoff.
-
2. Re: Does HornetQ REST interface work in EAP 6.1 cluster?
jbertram Jul 10, 2014 11:39 AM (in response to mgznt)Do (did) you have an HTTP request load-balancer in between your REST clients and the EAP 6.1 cluster?
You're correct that the consumer state for the REST client is not mirrored across the cluster.
-
3. Re: Does HornetQ REST interface work in EAP 6.1 cluster?
mgznt Jul 11, 2014 2:19 AM (in response to jbertram)Yes, we use mod_cluster for load balancing. It now redirects the REST clients to the single-server-group.
Judging from the code, the REST interface uses the HornetQ API to manage subscriptions. Are there any plans to add support for mirroring the subscriptions across the cluster nodes?
-
4. Re: Does HornetQ REST interface work in EAP 6.1 cluster?
jbertram Jul 11, 2014 8:08 AM (in response to mgznt)Yes, we use mod_cluster for load balancing. It now redirects the REST clients to the single-server-group.
Your solution is valid. Another way to solve the problem I think would be to enforce sticky sessions where the first request would be load-balanced but all subsequent requests from that client would go back to the same server. I'm not very familiar with mod_cluster so I'm not 100% it supports that type of functionality but I know other load-balancers do.
Judging from the code, the REST interface uses the HornetQ API to manage subscriptions. Are there any plans to add support for mirroring the subscriptions across the cluster nodes?
There are no plans to add support for mirroring subscriptions across the cluster nodes at this time.