Esempio n. 1
0
def __startServer(cfg, isBootstrap):
    """
    启动服务器实体
    参数1:实体配置信息
    参数2:是否是第一个启动的
    """
    for k, v in cfg.items():
        if not v['bOpen']:
            continue

        if v['cid'] == os.getenv("KBE_COMPONENTID"):
            KBEngine.createEntityLocally(k, v['default'])

        if not v['bLoadBalance']:
            KBEngine.setAppFlags(
                KBEngine.APP_FLAGS_NOT_PARTCIPATING_LOAD_BALANCING)
Esempio n. 2
0
def setup(signal, sender):
    indexes, conf = Equalization.getBaseIndexInfo("http_utils")
    if sender.groupIndex in indexes:
        KBEngine.setAppFlags(
            KBEngine.APP_FLAGS_NOT_PARTCIPATING_LOAD_BALANCING)
        server = HTTPServerAsync()
        index = indexes.index(sender.groupIndex)
        info = conf[index]
        ip = ""
        if info["externalIP"]:
            ip = settings_kbengine.baseapp.externalAddress.value
        if not ip:
            ip = internal_ip_address()
        port = info["port"]
        xml_conf = settings_kbengine.apps.http_utils
        ip = xml_conf.ip.value or ip
        port = xml_conf.port.value or port
        server.listen(ip, port)
        plugins.plugins.load_all_module("http_servers")
        http_setup.send(server, conf=dict(ip=ip, port=port))
        print("Starting development server at http://%s:%s" % (ip, port))