transport layer and multiple connections

Matthieu Moy Matthieu.Moy at imag.fr
Sun Nov 20 10:37:52 GMT 2005


John A Meinel <john at arbash-meinel.com> writes:

> The reason we didn't use a specific dictionary is because we wanted
> finer control over whether connections are kept alive or not. 

I also realize that my patch is probably not multi-thread safe. A
server may have to be multi-threaded, and in this case, we need either
a mutex mechanism, or one transport per thread.

> Long term bzrlib needs to be designed that it can be loaded for a
> long time. It may be used in a GUI (or even a server) that stays
> open for a long time, rather than a command line program that runs
> frequently.

It isn't stupid to keep the connection open for some time in a server
either. I've been working with baz behind a firewal + overloaded HTTP
proxy, and for most operations, opening the connection was the longest
thing. Having a persistant pool of connections, that would stay in
opened for say, a few minutes would be a considerable performance gain
in this case. "bzr service" and "bzr shell" would be helpfull for
that.

So, the problem is harder than I thought, but it still would be nice
to solve it.

-- 
Matthieu




More information about the bazaar mailing list