예제 #1
0
    def __init__(self,
                 id,
                 ip,
                 service_group,
                 port,
                 params,
                 state,
                 start_time,
                 db_update_fun=None):
        self.id = id
        self.ip = ip
        self.service_group = service_group
        self._port = port
        self.params = params
        self.state = state
        self.start_time = start_time

        self.set_hb_info(heartbeat_time="")

        self.db_update_fun = db_update_fun
        self.tp_service_dic = {}
        self.dfp = DirtyFlagProcess(self)

        self._control_rpc = None

        Jobs().add_interval_job(HEARTBEAT_EXPIRE_TIME, self._heart_beat_expire)

        if "db_name" in self.params:
            Jobs().add_cron_job(self.__backup, hour=MYSQL_DB_BACKUP_HOUR)
예제 #2
0
    def __init__(self, db_update_fun=None, **kwargs):
        """
        id, passwd,
        id_card, email, phone,
        leader_id,
        bank, bank_address, bank_account, bank_name,
        wechat, alipay
        :param db_update_fun:
        :param kwargs:
        :return:
        """
        self.__dict__ = kwargs

        self.dfp = DirtyFlagProcess(self)
        self.db_update_fun = db_update_fun
예제 #3
0
 def __init__(self, role_id):
     self.db_key = role_id
     self.DirtyFlag = DirtyFlagProcess(self)
     self.DirtyFlag.add_dirty_notify_fun(client_dirty_receive_fun, *test_args, **test_kwargs)