|  | @@ -75,12 +75,12 @@ class PoolRecall(object):
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      def get_mid_h_key(self, province_code, key_flag=''):
 |  |      def get_mid_h_key(self, province_code, key_flag=''):
 | 
											
												
													
														|  |          if key_flag == 'region_24h':
 |  |          if key_flag == 'region_24h':
 | 
											
												
													
														|  | -            # mid对应小时级视频列表 redis-key
 |  | 
 | 
											
												
													
														|  | 
 |  | +            # mid对应小时级视频列表 redis-key  地域分组相对24h
 | 
											
												
													
														|  |              h_recall_mid_key = f"{config_.H_WITH_MID_RECALL_KEY_NAME_PREFIX_REGION_24H}{self.app_type}.{self.mid}"
 |  |              h_recall_mid_key = f"{config_.H_WITH_MID_RECALL_KEY_NAME_PREFIX_REGION_24H}{self.app_type}.{self.mid}"
 | 
											
												
													
														|  |              # 判断mid对应小时级视频列表 时间记录
 |  |              # 判断mid对应小时级视频列表 时间记录
 | 
											
												
													
														|  |              h_record_key = f"{config_.H_WITH_MID_RECORD_KEY_NAME_PREFIX_REGION_24H}{self.app_type}.{self.mid}"
 |  |              h_record_key = f"{config_.H_WITH_MID_RECORD_KEY_NAME_PREFIX_REGION_24H}{self.app_type}.{self.mid}"
 | 
											
												
													
														|  | -        elif key_flag == '24h':
 |  | 
 | 
											
												
													
														|  | -            # mid对应小时级视频列表 redis-key
 |  | 
 | 
											
												
													
														|  | 
 |  | +        elif key_flag in ['24h', 'day_24h']:
 | 
											
												
													
														|  | 
 |  | +            # mid对应小时级视频列表 redis-key   相对24h
 | 
											
												
													
														|  |              h_recall_mid_key = f"{config_.H_WITH_MID_RECALL_KEY_NAME_PREFIX_24H}{self.app_type}.{self.mid}"
 |  |              h_recall_mid_key = f"{config_.H_WITH_MID_RECALL_KEY_NAME_PREFIX_24H}{self.app_type}.{self.mid}"
 | 
											
												
													
														|  |              # 判断mid对应小时级视频列表 时间记录
 |  |              # 判断mid对应小时级视频列表 时间记录
 | 
											
												
													
														|  |              h_record_key = f"{config_.H_WITH_MID_RECORD_KEY_NAME_PREFIX_24H}{self.app_type}.{self.mid}"
 |  |              h_record_key = f"{config_.H_WITH_MID_RECORD_KEY_NAME_PREFIX_24H}{self.app_type}.{self.mid}"
 | 
											
										
											
												
													
														|  | @@ -97,6 +97,8 @@ class PoolRecall(object):
 | 
											
												
													
														|  |                      key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_REGION_BY_24H}{province_code}."
 |  |                      key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_REGION_BY_24H}{province_code}."
 | 
											
												
													
														|  |                  else:
 |  |                  else:
 | 
											
												
													
														|  |                      key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_DUP1_REGION_24H_H}{province_code}."
 |  |                      key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_DUP1_REGION_24H_H}{province_code}."
 | 
											
												
													
														|  | 
 |  | +            elif key_flag == 'day_24h':
 | 
											
												
													
														|  | 
 |  | +                key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_DUP2_REGION_24H_H}{province_code}."
 | 
											
												
													
														|  |              else:
 |  |              else:
 | 
											
												
													
														|  |                  key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_REGION_BY_H}{province_code}."
 |  |                  key_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_REGION_BY_H}{province_code}."
 | 
											
												
													
														|  |          elif self.ab_code in [code for _, code in config_.AB_CODE['rank_by_24h'].items()]:
 |  |          elif self.ab_code in [code for _, code in config_.AB_CODE['rank_by_24h'].items()]:
 | 
											
										
											
												
													
														|  | @@ -1053,17 +1055,23 @@ class PoolRecall(object):
 | 
											
												
													
														|  |          province_code = self.client_info.get('provinceCode', '-1')
 |  |          province_code = self.client_info.get('provinceCode', '-1')
 | 
											
												
													
														|  |          if province_code == '':
 |  |          if province_code == '':
 | 
											
												
													
														|  |              province_code = '-1'
 |  |              province_code = '-1'
 | 
											
												
													
														|  | -        if province_code == '-1':
 |  | 
 | 
											
												
													
														|  | -            t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size),
 |  | 
 | 
											
												
													
														|  | -                 gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)]
 |  | 
 | 
											
												
													
														|  | -        elif self.ab_code == config_.AB_CODE['region_rank_by_h'].get('region_rule_rank2'):
 |  | 
 | 
											
												
													
														|  | -            t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'region_24h'),
 |  | 
 | 
											
												
													
														|  | -                 gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)]
 |  | 
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +        if self.ab_code == config_.AB_CODE['region_rank_by_h'].get('region_rule_rank2'):
 | 
											
												
													
														|  | 
 |  | +            if province_code == '-1':
 | 
											
												
													
														|  | 
 |  | +                t = [gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)]
 | 
											
												
													
														|  | 
 |  | +            else:
 | 
											
												
													
														|  | 
 |  | +                t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'region_24h'),
 | 
											
												
													
														|  | 
 |  | +                     gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)]
 | 
											
												
													
														|  |          else:
 |  |          else:
 | 
											
												
													
														|  | -            t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size),
 |  | 
 | 
											
												
													
														|  | -                 gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'region_24h'),
 |  | 
 | 
											
												
													
														|  | -                 # gevent.spawn(self.region_dup_recall, province_code, 1, size, expire_time),
 |  | 
 | 
											
												
													
														|  | -                 gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)]
 |  | 
 | 
											
												
													
														|  | 
 |  | +            if province_code == '-1':
 | 
											
												
													
														|  | 
 |  | +                t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'day_24h')]
 | 
											
												
													
														|  | 
 |  | +            else:
 | 
											
												
													
														|  | 
 |  | +                t = [gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size),
 | 
											
												
													
														|  | 
 |  | +                     gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'region_24h'),
 | 
											
												
													
														|  | 
 |  | +                     gevent.spawn(self.rov_pool_recall_with_region_by_h, province_code, size, 'day_24h'),
 | 
											
												
													
														|  | 
 |  | +                     # gevent.spawn(self.region_dup_recall, province_code, 1, size, expire_time),
 | 
											
												
													
														|  | 
 |  | +                     # gevent.spawn(self.region_dup_recall, province_code, 2, size, expire_time)
 | 
											
												
													
														|  | 
 |  | +                     ]
 | 
											
												
													
														|  |          gevent.joinall(t)
 |  |          gevent.joinall(t)
 | 
											
												
													
														|  |          region_recall_result_list = [i.get() for i in t]
 |  |          region_recall_result_list = [i.get() for i in t]
 | 
											
												
													
														|  |          # 将已获取到的视频按顺序去重合并
 |  |          # 将已获取到的视频按顺序去重合并
 | 
											
										
											
												
													
														|  | @@ -1106,6 +1114,8 @@ class PoolRecall(object):
 | 
											
												
													
														|  |          """
 |  |          """
 | 
											
												
													
														|  |          if key_flag == 'region_24h':
 |  |          if key_flag == 'region_24h':
 | 
											
												
													
														|  |              push_from = config_.PUSH_FROM['rov_recall_region_24h']
 |  |              push_from = config_.PUSH_FROM['rov_recall_region_24h']
 | 
											
												
													
														|  | 
 |  | +        elif key_flag == 'day_24h':
 | 
											
												
													
														|  | 
 |  | +            push_from = config_.PUSH_FROM['rov_recall_24h']
 | 
											
												
													
														|  |          else:
 |  |          else:
 | 
											
												
													
														|  |              push_from = config_.PUSH_FROM['rov_recall_region_h']
 |  |              push_from = config_.PUSH_FROM['rov_recall_region_h']
 | 
											
												
													
														|  |          # 获取mid对应的小时级列表redis-key
 |  |          # 获取mid对应的小时级列表redis-key
 |