On Fri, Jun 17, 2011 at 2:33 PM, Tobias Bocanegra <[email protected]> wrote: > hi chad, > i'm not 100% sure, but i think there is only 1 connection openend per > client repository. all "session traffic" is then using the same > connection. iirc, this was an optimization, so that no new connections > were made for each new session. > > but i agree, that this might harm performance with a lot of concurrent > sessions, and there is certainly room for improvements. > > patches welcome!
FYI, there is no configuration of the connectionPool at all. So it's using the http client default value of 2 per host. I'll study the code a bit more, but this seems to be at odds with your recollection of actively limiting the connections to one. Perhaps you are thinking of how the code limits the HttpClient class to a single object per host? Or perhaps I'm missing something. Note, this limit of 2 per host is a part of the HTTP RFC intended to prevent people from impolitely storming a server on the web. As deployed as part of the JCR remoting, where I just use it as a connection to my JCR / data tier, the per host limit makes no sense at all. What I don't quite understand is why this is like this since, as far as I can tell, the spi2dav module is primarily intended, and used, for this type of data tier server connectivity use case. Am I just wrong about the primary use case here? My plan is to modify the RepositoryServiceImpl so that it can do some parameterized configuration of the http connection params. What would be the best way to get this param values into the RepositoryServiceImpl?
