users@glassfish.java.net

Re: IIOP load-balancing not happening in cluster

From: <glassfish_at_javadesktop.org>
Date: Wed, 07 Nov 2007 19:57:51 PST

The user wants to thank the community for the quick response and support, along with the following feedback.

<translation>
Almost all of my knowledge about Glassfish v2 cluster was from the documentation SJSASEEHAAG.pdf. I have studied this documentation and I don't have any false assumption.

1. When I say there is no way to configure dispatching algorithms, I was referring to stand-alone java client. True, it's configurable for ACC, but it doesn't help me. Not a word in that doc about how to configure it for a standalone java client. That why I said it's not configurable.

Refer to SJSASEEHAAG.pdf page 227 first line,“You can set up RMI-IIOP load balancing and failover for applications running in the application client container (ACC). Weighted round-robin load balancing is also supported.”,

ACC of course is the recommended approach by Sun. But I have my use case. So may existing apps running on Tomcat and JBoss, how can I migrate them all to Glassfish? IMO, it's more common to use Glassfish to deploy new apps, and it has naturally has to interop with clients in other containers. Sun engineers aren't so naive as to think all clients run in ACC, are they?

2. I also want to repeat that in order to dispatch requests to different hosts, I have to do a new lookup. I have tested it, and can approve it.

SJSASEEHAAG.pdf, in the middle of page 225 ,“When a client performs a JNDI lookup for an object, theNaming Service creates a InitialContext (IC) object associated with a particular server instance. From then on, all lookup requests made using that IC object are sent to the same server instance. All EJBHome objects looked up with that InitialContext are hosted on the same target server. Any bean references obtained henceforth are also created on the same target host.”,

That is, after I obtain a InitialContext object, any lookup on it will be sent to the same server instance. If I want to distribute to different hosts, what else I can do other repeatedly creating InitialContext? This will of course create overhead. According to my testing, if I only lookup once, reuse the bean obtained from this lookup, 1000 requests will all be sent to the same host.

</translation>

The original posts are here:
http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?forum=22&thread=46978

After reading sections of Glassfish HA admin guide, I was left with the same impression as this user. It seems there is discrenpancy regarding IIOP-load balancing between what Tim described and the doc.

The user also has valuable feedback on glassfish in general, which I will translate later in a separate threads.

-cheng
[Message sent by forum member 'cf126330' (cf126330)]

http://forums.java.net/jive/thread.jspa?messageID=244452