Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 02 Feb 2001 10:26:30 -0800
From:      Julian Elischer <julian@elischer.org>
To:        hackers@freebsd.org
Subject:   Re: CVSup7.FreeBSD.org is back in service
Message-ID:  <3A7AFBD6.1F727137@elischer.org>
References:  <200101312315.f0VNFwR04246@vashon.polstra.com> <3A79145A.39CF9671@elischer.org> <200102021754.f12Hscu03043@vashon.polstra.com>

next in thread | previous in thread | raw e-mail | index | archive | help
John Polstra wrote:
> 
> In article <3A79145A.39CF9671@elischer.org>,
> Julian Elischer  <julian@elischer.org> wrote:
> >
> > I have the folowing suggestion for CVSup..
> > the ability to specify several servers.
> > Cvsup can have a quick exchange with each to inquire about load and check the
> > latency and bandwidth
> > and the last time updated, and choose the best....
> > Since you control both ends this is possible..
> 
> This is a frequently requested feature, but I've always been reluctant
> to provide it.  Human nature being what it is, I'm afraid soon
> everybody would have 15 servers listed in their supfiles.  So 15
> servers would get hit on each update instead of just one.  It is
> true that the load query wouldn't hit the servers nearly as hard as
> an actual update.  But it would require forking a process at least.

your program could still reject if it was full, like it does now.
Only servers with capacity would respond.. Also, clients would be gone 
quicker as they would be choosing better servers for their location.

One might say that the number of extra load caused by a flaky connection
can be as great as the 2 or 3 KB to be sent in a quick response test.

> 
> (Yes, it could be done by creating a thread, but experience has shown
> that to be a bad idea.  All you need is one client doing something
> weird to trigger a bug in the server, and poof, the master server has
> crashed.  It's a lot safer to isolate each client in its own process
> as quickly as possible.)
> 
> Also, the loads on the mirrors I've observed vary erratically and
> rapidly.  Servers can and do go from 20 clients to 3 clients in a
> matter of seconds.  So the results of a load query 15 seconds ago
> aren't all that valuable, nor are figures representing load averages
> over time. 

I'm more interested in line throughput, and whether
a partiular server is just 'full'

> 
> I would rather leave load balancing out of the CVSup protocol and have
> it implemented by other means.  The folks who run the mirrors in Japan
> have a very nice setup which uses SNMP to query the number of active
> CVSup clients on each mirror.  They don't do automatic load balancing
> with it currently, but they make some nice graphs available on the web
> for people to use.  (Sorry, I don't remember the URL.)

Another feature that would be nice is to query from a server who doesn't
 have some collection, "well who does?" Last time I checked, to get ports, 
I had to use a server other than the closed Aus. server.. so I end up 
getting everything from the USA

-- 
      __--_|\  Julian Elischer
     /       \ julian@elischer.org
    (   OZ    ) World tour 2000-2001
---> X_.---._/  
            v


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A7AFBD6.1F727137>