← 返回题库
中级

实现最少连接数负载均衡

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve():
    from pyodide.http import open_url
    from io import StringIO
    service_registry_csv = open_url(____).read()
    import pandas as pd
    from io import StringIO
    registry = pd.read_csv(StringIO(____))
    class LeastConnectionLB:
        def __init__(____):
            self.conns = {i['____']: int(____) for i in instances if i['____']=='____'}
        def acquire(____):
            if not self.conns: return None
            iid = min(____)
            self.conns[iid] += ____
            return iid
        def release(____):
            if iid in self.conns: self.conns[iid] = max(____, self.conns[iid]-____)
    order_insts = registry[registry['____']=='____'].to_dict(____)
    lb = LeastConnectionLB(____)
    print(____)
    assigned = []
    for i in range(____):
        iid = lb.acquire()
        assigned.append(____)
    print(____)
    print(____)
    lb.release(____); lb.release(____)
    print(____)

示例

输入
solve()
期望输出
初始连接数: {'order-1': 30, 'order-2': 22}
分配: ['order-2', 'order-2', 'order-2', 'order-2', 'order-2', 'order-2']
分配后连接数: {'order-1': 30, 'order-2': 28}
释放2个后: {'order-1': 30, 'order-2': 26}
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码