Files
Aether/apps/aether-gateway/src/cache/direct_plan_bypass.rs
T
fawney19 763ff03a7b refactor: 拆分 gateway 单体为独立 crate,新增 systemd 部署方案
将 gateway 内部的 model-fetch、provider-transport、scheduler-core、
usage-runtime、video-tasks-core 模块提取为独立 crate;重构 gateway
内部模块结构(state/router/cache/data/query 等);移除大量遗留模块
文件;新增 systemd 二进制部署骨架及相关文档;更新前端 usage 相关
API 和组件。
2026-04-05 20:23:16 +08:00

19 lines
503 B
Rust

use std::time::Duration;
use aether_cache::ExpiringMap;
#[derive(Debug, Default)]
pub(crate) struct DirectPlanBypassCache {
entries: ExpiringMap<String, ()>,
}
impl DirectPlanBypassCache {
pub(crate) fn should_skip(&self, cache_key: &str, ttl: Duration) -> bool {
self.entries.contains_fresh(&cache_key.to_string(), ttl)
}
pub(crate) fn mark(&self, cache_key: String, ttl: Duration, max_entries: usize) {
self.entries.insert(cache_key, (), ttl, max_entries);
}
}