On Thu, May 15, 2008 at 10:04:51PM +1200, Nigel Jones wrote:
> subhodip biswas wrote:
>> hi !
>> while trying to download F9 what I face is quite frustrating ..in fact
>> this can be faced by a lot of user in India .
>> while wbut mirror is down (temporarily ) and other cannot handle all
>> the load and bit torrent is quite slow .
>> clicking on i386 direct download always gives error 412 : too many
>> connected users .
>> any way of avoiding this .. I am currently downloading from a mirror
>> in USA and its quite slow.
>>
>>
> Hi,
>
> Going from what I know (someone might want to update me here):
> We currently only have 3 mirrors in India
> (
http://mirrors.fedoraproject.org/), one is on a 45mbps link, while the
> other two are on 5mbps and 2mbps links.
One thing MM would benefit from would be a weighted sampler.
Right now, it collects various lists of Hosts to return (same
netblock, same country, same continent, global). It shuffles (python random.shufle())
each of
the lists, then concatenates them, and sends that result to the end
user. However, this does not take into account that one mirror has a
45Mbps link, and another a 2Mbps; they would each get chosen
"randomly".
What I need is a replacement for random.shuffle() that takes a list of
tuples: (something, weight). And returns a list of somethings that
was generated with a statistical sampling based on weight.
Now, this is _probably_ a simple thing to do; my college number theory
professor would mock me for having not "just done it" myself, but hey
- I took that class _twice_ before passing it - I don't trust my
skills in this area to get it right.
Volunteers?
Perhaps something like the attached test program. I am new to python so
be gentle.
--
kr