コード例 #1
0
 def run(self):
     while 1:
         amount, _ = self._get_host_amount(settings.tcp_conf_path)
         msg = dict(msg_type="heartbeat",
                    node_id=server_node_id,
                    load=amount,
                    time_stamp=time.time())
         processor.process_send(msg)
         time.sleep(1)
コード例 #2
0
ファイル: server.py プロジェクト: ninetian/nginx_api
 def run(self):
     while 1:
         amount, _ = self._get_host_amount(settings.tcp_conf_path)
         msg = dict(
             msg_type = "heartbeat",
             node_id = server_node_id,
             load = amount,
             time_stamp = time.time()
         )
         processor.process_send(msg)
         time.sleep(1)
コード例 #3
0
ファイル: server.py プロジェクト: ninetian/nginx_api
def request_handler(data):
    dst_host = data['dst_host']
    dst_port = data['dst_port']
    msg_id = data['msg_id']
    src_port = get_tcp_port()
    src_host = settings.load_balancer_host
    
    server_port = src_port
    upstream_server = [{dst_host: dst_port}]
    distrubute = "ip_hash"
    kwargs = {
        "server_port": server_port,
        "upstream_server": upstream_server,
        "distrubute": distrubute
    }
    
    templater = TemplateManage(settings.template_path)
    
    message = {
        "server": templater.render_tcp_lb(**kwargs),
        "server_port": server_port,
        "host_type": "tcp",
        "original": kwargs
    }
    
    message_final = {
        "message_id": msg_id,
        "message_type": "task",
        "command": "addhost",
        "content": message
    }
    
    driver = NginxDriver(logger=LOG)
    ret, why = driver.add_host(message_final)
    if ret == True:
        data = dict(
            msg_id = msg_id,
            msg_type = "result",
            node_id = server_node_id,
            target_host = src_host,
            target_port = src_port
        )
        processor.process_send(data)
コード例 #4
0
def request_handler(data):
    dst_host = data['dst_host']
    dst_port = data['dst_port']
    msg_id = data['msg_id']
    src_port = get_tcp_port()
    src_host = settings.load_balancer_host

    server_port = src_port
    upstream_server = [{dst_host: dst_port}]
    distrubute = "ip_hash"
    kwargs = {
        "server_port": server_port,
        "upstream_server": upstream_server,
        "distrubute": distrubute
    }

    templater = TemplateManage(settings.template_path)

    message = {
        "server": templater.render_tcp_lb(**kwargs),
        "server_port": server_port,
        "host_type": "tcp",
        "original": kwargs
    }

    message_final = {
        "message_id": msg_id,
        "message_type": "task",
        "command": "addhost",
        "content": message
    }

    driver = NginxDriver(logger=LOG)
    ret, why = driver.add_host(message_final)
    if ret == True:
        data = dict(msg_id=msg_id,
                    msg_type="result",
                    node_id=server_node_id,
                    target_host=src_host,
                    target_port=src_port)
        processor.process_send(data)