#7 Load Balancing

closed
nobody
None
5
2003-03-13
2003-03-09
Guy
No

Hi,

Is there a possibility to use Simple as a Load balancer?
or a Reverse Proxy?
I was impressed from the performance comparison and
I'm looking for an efficient applicative LB or reverse proxy
in Java that I could add my own LB algorithm.
I want this solution to be a dedicated LB and not just
another servlet container and I wonder if it can be done
in Simple and How?

Thanks,
Guy.

Discussion

  • Niall Gallagher

    Niall Gallagher - 2003-03-13

    Logged In: YES
    user_id=604628

    Hi,

    In regard to your comments on how Simple could be used as a Reverse
    Proxy, I think it is possible. However, the way it is implemented is largely
    dependant on the servers it does the balancing for. I will assume that you
    are using HTTP in the back end.

    I think this could be implemented effectively as a ResourceEngine (where
    each backend server is represented as a Resource), have a look at the
    simple.http.load.LoaderEngine, which serves Service objects. Perhaps a
    similar object to the simple.http.load.Registry which selects Service objects
    could provide your load balancing algorithm. Transferring the HTTP header
    to the backend server is only a matter of using Request.toString() over a
    connected socket. If this seems like to much, a popular way to provide load
    balancing is to use the HTTP "Redirect" header (RFC 2616). The client is
    unaware of the redirection except for perhaps a change in the domain
    name. This is also much faster, easier, and elegant than a direct proxy
    mechanism, any additional data can be passed transparently to the backend
    server as a cookie or a special header.

    If the backend server is not HTTP, then an implementation is largely
    dependant on how coupled your servers are to the load balancer.

    Hope this helps, if you decide to use Simple please let me know how you get
    on.

    Regards,
    Niall

     
  • Niall Gallagher

    Niall Gallagher - 2003-03-13
    • status: open --> closed
     

Log in to post a comment.