Manu George wrote: > Yes I understand that random will work but how about others like round > robin etc? Are we planning to support only the random strategy?
I think we can support whatever policy we want since this is a component of OEJB and not the clustering implementation that is bolted on to it. Round robin and random are both fairly simple to implement. Jeff > > On 6/14/07, Jeff Genender <[EMAIL PROTECTED]> wrote: >> >> >> Manu George wrote: >> > As per what I understood if one of the servers are down then the >> > client will call the next one in the list which would send it a new id >> > after which all calls will be to that one. >> >> You are assuming no policy for how a client chooses a server and that >> its linear. Consider it random and this issue goes away. >> >> > But in order to decide >> > which server to pick based on the load balancing strategy used I think >> > we may need more information to be passed to the client. Once this >> > discussion is finished i think we should put this in a wiki page as it >> > provides good insights on clustering and the logic used. I can >> > probably do that if no one else wants it :) >> > >> > Regards >> > Manu >> > >> > On 6/14/07, Paulo Lopes <[EMAIL PROTECTED]> wrote: >> >> The idea of id download on the first connection doesn't seem nice to >> >> me. Assume the following scenario: >> >> >> >> you have a cluster of 3 servers, and the 3 are aware of the other by >> >> their internal configuration. (no discovery inside the cluster). The >> >> client receives the list of 3 servers and now has to decide which one >> >> to connect. It is clear here that the client needs to know some more >> >> about the server to decide which one to pick in order to share the >> >> load balancing in the cluster, more there is no way for the client to >> >> know if one of the servers is down and if it is that server is removed >> >> from the list and never connected again during that request. >> >> >> >> My idea is that perhaps we would better have a small extra server that >> >> i will call a service dispatcher, that is the central point for the >> >> cluster. no need to change the openejb code each server still works in >> >> a isolated way. The SD would have the configurations of where the >> >> openejb nodes are in the cluster and their status (up/down). >> >> >> >> The clients would then connect to the SD and the SD would query the >> >> list of servers, and forward to the next available one. Metrics could >> >> be gathered from the SD such as time between query and response from >> >> OEJB making a simple (not so accurate) load balancer system. >> >> >> >> Paulo >> >> >>
