def keep_subscribe(): subscribe = orgs_mapping_for_memory_pub_sub.subscribe() for message in subscribe.listen(): if message['type'] != 'message': continue Organization.expire_orgs_mapping() logger.debug('Expire orgs mapping')
def keep_subscribe(): while True: try: subscribe = orgs_mapping_for_memory_pub_sub.subscribe() for message in subscribe.listen(): if message['type'] != 'message': continue if message['data'] == b'error': raise ValueError Organization.expire_orgs_mapping() logger.debug('Expire orgs mapping') except Exception as e: logger.exception(f'subscribe_orgs_mapping_expire: {e}') Organization.expire_orgs_mapping()
def keep_subscribe_org_mapping(): while True: try: subscribe = orgs_mapping_for_memory_pub_sub.subscribe() msgs = subscribe.listen() # 开始之前关闭连接,因为server端可能关闭了连接,而 client 还在 CONN_MAX_AGE 中 close_old_connections() for message in msgs: if message['type'] != 'message': continue if message['data'] == b'error': raise ValueError Organization.expire_orgs_mapping() logger.debug('Expire orgs mapping: ' + str(message['data'])) except Exception as e: logger.exception(f'subscribe_orgs_mapping_expire: {e}') Organization.expire_orgs_mapping() finally: # 结束收关闭连接 close_old_connections()
def keep_subscribe_org_mapping(): orgs_mapping_for_memory_pub_sub.subscribe( lambda org_id: Organization.expire_orgs_mapping())