I'm not sure of the status so far, but I'd like to summarize a strawman. I have no idea how to code this at this time or if it can be done.

--------------------------
*Config* [Feel free to change the names]
ProxyClient http://server1/config.xml
ProxyClient http://server2/config.xml
ProxyClient http://server3/another/config.xml
ProxyUpdate /proxyconfig

*Startup*
Apache polls each proxy-client for existence and config at the URL defined by te ProxyClient directive.
Each proxy-client states the paths/extension/mimetype/??? it can serve as well as its "weight".



*On going* Apache periodically polls the config URL for changes. --or-- A proxy-client can join, remove, alter URL availability by using making a request to apache defined at ProxyUpdate.


*Edge cases*
Authentication, environment variables, and other system parameters would be
passed to the proxy via X-Headers. Apache would need to deny/filter these header names from outside clients.



*stickyness* unknown how to fix this in a generic manner


*Failover* 2 cases 1) server unavailable - easy to recover since a new connection is made 2) server available but doesn't handle request anymore - Proxy-client returns a custom header to let apache move to next node?

*Changes to tomcat*
Add a proxy mode flag to allow for the X- headers to pass authentication and other variables.
Add to the manager(?) app and method to expose all the URL spaces availble.
Minor changes to fix getRemoteAddr() to show the client, not the apache server.



Pros - Simple(?) and not tomcat specific. Cons - Duplicate (re)parsing of headers, probably higher latency than jk.


-Tim


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to