Kaynağa Gözat

开启删除过期缓存数据,开启时间限制

JiahengHe 1 yıl önce
ebeveyn
işleme
7344250a07

+ 1 - 2
src/binance_usdt_swap_data_listener.rs

@@ -91,8 +91,7 @@ pub async fn run_listener(is_shutdown_arc: Arc<AtomicBool>) {
                         indicators.total_size = old_msv.total_size + msv.total_size;
                         indicators.last_calc_time = msv.last_calc_time;
                         // 删除掉指定小时前的数据
-                        // delete_expire_data(indicators, 4)
-                        indicators
+                        delete_expire_data(indicators, 4)
                     }
                 };
                 indicator_map.insert(symbol, new_msv);

+ 1 - 2
src/gate_usdt_swap_data_listener.rs

@@ -94,8 +94,7 @@ pub async fn run_listener(is_shutdown_arc: Arc<AtomicBool>) {
                         indicators.total_size = old_msv.total_size + msv.total_size;
                         indicators.last_calc_time = msv.last_calc_time;
                         // 删除掉指定小时前的数据
-                        // delete_expire_data(indicators, 4)
-                        indicators
+                        delete_expire_data(indicators, 4)
                     }
                 };
                 indicator_map.insert(symbol, new_msv);

+ 4 - 4
src/rank.rs

@@ -38,7 +38,7 @@ const TWO_HUNDRED: Decimal = dec!(200);
 // 根据最终的msv计算排行榜
 pub fn generate_rank_by_indicator_map(indicator_map: &MutexGuard<HashMap<String, Indicators>>, hour_num: i64) -> Value {
     let now = Utc::now().timestamp_millis();
-    // let limit_time = now - 60 * 1000 * 60 * hour_num;
+    let limit_time = now - 60 * 1000 * 60 * hour_num;
     let mut rank_list: Vec<Rank> = vec![];
     let binance_symbols = get_symbols_by_exchange("binance_usdt_swap").as_array().unwrap_or(&vec![]).clone();
     for (key, indicators) in indicator_map.iter() {
@@ -59,9 +59,9 @@ pub fn generate_rank_by_indicator_map(indicator_map: &MutexGuard<HashMap<String,
 
         for (_index, value) in indicators.indicator.iter().enumerate() {
             // 如果数据时间循环到超过限制时间,直接跳出循环
-            // if value.timestamp.to_i64().unwrap() < limit_time{
-            //     break
-            // }
+            if value.timestamp.to_i64().unwrap() < limit_time{
+                continue
+            }
             let msv_abs_value = value.msv_vol.abs();
 
             if msv_abs_value <= Decimal::ZERO {