Project: roundrobin

Collection of roundrobin utilities

Project Details

Latest version
0.0.4
Home Page
https://github.com/linnik/roundrobin
PyPI Page
https://pypi.org/project/roundrobin/

Project Popularity

PageRank
0.001710473268846907
Number of downloads
679673

Build Status PyPI install versions

roundrobin

This is rather small collection of round robin utilites

>>> import roundrobin
>>> get_roundrobin = roundrobin.basic(["A", "B", "C"])
>>> ''.join([get_roundrobin() for _ in range(7)])
'ABCABCA'
>>> # weighted round-robin balancing algorithm as seen in LVS
>>> get_weighted = roundrobin.weighted([("A", 5), ("B", 1), ("C", 1)])
>>> ''.join([get_weighted() for _ in range(7)])
'AAAAABC'
>>> # smooth weighted round-robin balancing algorithm as seen in Nginx
>>> get_weighted_smooth = roundrobin.smooth([("A", 5), ("B", 1), ("C", 1)])
>>> ''.join([get_weighted_smooth() for _ in range(7)])
'AABACAA'