Compiling rat_engine v1.0.0 (/Users/0ldm0s/workspaces/rust/rat/rat_engine)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.61s
Running `target/debug/examples/cache_compression_performance_test`
🚀 启动缓存压缩协调器性能测试
📋 测试目标: 验证不同策略下的性能表现
🌐 服务器启动在: http://127.0.0.1:3001
[90m12:10:35.797[0m [97m[44mINFO [0m [37m拥塞控制已禁用[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37mRAT Engine Performance Configuration:[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 📊 CPU Cores: 8[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 📊 Workers: 8[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 🧠 Memory Allocator: mimalloc (Microsoft's high-performance allocator)[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 🔗 CPU Affinity: Enabled[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 🔧 Performance optimization: Enabled[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 💾 Total Memory: 8192 MB[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 🖥️ OS: Darwin[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m 📝 Logging: Terminal output enabled[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37mPerformance optimization initialized successfully[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37m🔐 已安装 rustls aws_lc_rs CryptoProvider[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m🌐 RAT Engine server running on 127.0.0.1:3001 (支持: HTTP/1.1)[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m📋 已注册的 HTTP 路由:[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m GET /dynamic-data[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m GET /raw-data[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m GET /small-data[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m GET /large-data[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m🌐 服务器支持 HTTP 请求[0m
[90m12:10:35.798[0m [97m[44mINFO [0m [37m✅ Started 8 worker threads[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 1 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 7 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 4 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 0 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 5 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 2 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 6 started[0m
[90m12:10:35.798[0m [30m[46mDEBUG[0m [37mWorker 3 started[0m
🧪 开始性能测试...
📊 测试场景: 小数据 (仅缓存)
路径: /small-data
开始测试...
🔄 执行第1次请求...
🔍 [服务端] 开始 psi_detector 协议检测: 127.0.0.1:59878 (数据长度: 99)
🔍 [服务端] 接收到的数据预览: GET /small-data HTTP/1.1
accept-encoding: gzip, d
🔍 [服务端] psi_detector 检测结果: 127.0.0.1:59878 (置信度: 95.0%, 协议: HTTP1_1)
🌐 [服务端] 路由到 HTTP/1.1 处理器: 127.0.0.1:59878
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /small-data[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /small-data[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /small-data[0m
[90m12:10:36.845[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:36.947[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/small-data[0m
[90m12:10:36.947[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/small-data[0m
[90m12:10:36.947[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/small-data[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/small-data[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/small-data[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/small-data, found=true[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/small-data[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/small-data[0m
[90m12:10:36.948[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: public, max-age=300[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🎯 [CacheMiddleware] 响应可以缓存[0m
[90m12:10:36.948[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 响应可以缓存,开始存储...[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[TTL] 添加键 GET/small-data 的过期时间: 1758946296[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存设置: GET/small-data (未压缩)[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存设置完成: GET/small-data (大值: false, L1: true, L2: false)[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m响应已缓存! 键: GET/small-data[0m
[90m12:10:36.948[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /small-data 200 103ms[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 103ms[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/json", "cache-control": "public, max-age=300", "x-cache": "MISS"}[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:36.948[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第1次请求结果:
- 状态码: 200 OK
- 响应时间: 106ms
- 响应大小: 38字节
- 缓存状态: MISS
- 压缩编码: none
⏳ 等待500ms后继续下一次请求...
🔄 执行第2次请求...
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /small-data[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /small-data[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /small-data[0m
[90m12:10:37.451[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:37.553[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/small-data[0m
[90m12:10:37.553[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/small-data[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存命中: GET/small-data[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m[TRANSFER] L1 缓存命中: GET/small-data[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/small-data, found=true[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m缓存命中! 键: GET/small-data, 耗时: 224.334µs[0m
[90m12:10:37.554[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /small-data 200 102ms[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 102ms[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/octet-stream", "x-cache": "HIT", "x-cache-time": "224.334\xc2\xb5s"}[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:37.554[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第2次请求结果:
- 状态码: 200 OK
- 响应时间: 104ms
- 响应大小: 38字节
- 缓存状态: HIT
- 压缩编码: none
⏳ 等待500ms后继续下一次请求...
🔄 执行第3次请求...
[90m12:10:38.057[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /small-data[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /small-data[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /small-data[0m
[90m12:10:38.058[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:38.160[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/small-data[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/small-data[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存命中: GET/small-data[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m[TRANSFER] L1 缓存命中: GET/small-data[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/small-data, found=true[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m缓存命中! 键: GET/small-data, 耗时: 197.459µs[0m
[90m12:10:38.160[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /small-data 200 102ms[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 102ms[0m
[90m12:10:38.160[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:38.161[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/octet-stream", "x-cache": "HIT", "x-cache-time": "197.459\xc2\xb5s"}[0m
[90m12:10:38.161[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:38.161[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:38.161[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第3次请求结果:
- 状态码: 200 OK
- 响应时间: 105ms
- 响应大小: 38字节
- 缓存状态: HIT
- 压缩编码: none
📈 统计结果:
- 平均响应时间: 105.00ms
- 平均响应大小: 38字节
- 缓存命中率: 2/3 (66.7%)
- 压缩应用率: 0/3 (0.0%)
📊 测试场景: 大数据 (缓存+压缩)
路径: /large-data
开始测试...
🔄 执行第1次请求...
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /large-data[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /large-data[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /large-data[0m
[90m12:10:38.162[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:38.685[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/large-data[0m
[90m12:10:38.685[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/large-data[0m
[90m12:10:38.685[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/large-data[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/large-data[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/large-data[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/large-data, found=true[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/large-data[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/large-data[0m
[90m12:10:38.686[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: public, max-age=600[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m🎯 [CacheMiddleware] 响应可以缓存[0m
[90m12:10:38.686[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 响应可以缓存,开始存储...[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[TTL] 添加键 GET/large-data 的过期时间: 1758946298[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存设置: GET/large-data (未压缩)[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[TTL] 添加键 GET/large-data 的过期时间: 1758946298[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存设置: GET/large-data (未压缩)[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存设置完成: GET/large-data (大值: false, L1: true, L2: false)[0m
[90m12:10:38.686[0m [30m[46mDEBUG[0m [37m响应已缓存! 键: GET/large-data[0m
[90m12:10:38.693[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 87823 bytes,压缩后: 2429 bytes,压缩比: 2.77%[0m
[90m12:10:38.693[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /large-data 200 530ms[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 530ms[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/json", "cache-control": "public, max-age=600", "x-cache": "MISS", "content-encoding": "gzip", "content-length": "2429", "x-compressed-size": "2429"}[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:38.693[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第1次请求结果:
- 状态码: 200 OK
- 响应时间: 532ms
- 响应大小: 2429字节
- 缓存状态: MISS
- 压缩编码: gzip
⏳ 等待500ms后继续下一次请求...
🔄 执行第2次请求...
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /large-data[0m
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /large-data[0m
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:39.197[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /large-data[0m
[90m12:10:39.198[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:39.705[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/large-data[0m
[90m12:10:39.705[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/large-data[0m
[90m12:10:39.705[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存命中: GET/large-data[0m
[90m12:10:39.705[0m [30m[46mDEBUG[0m [37m[TRANSFER] L1 缓存命中: GET/large-data[0m
[90m12:10:39.705[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/large-data, found=true[0m
[90m12:10:39.705[0m [30m[46mDEBUG[0m [37m缓存命中! 键: GET/large-data, 耗时: 71.084µs[0m
[90m12:10:39.708[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 87823 bytes,压缩后: 2429 bytes,压缩比: 2.77%[0m
[90m12:10:39.708[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /large-data 200 511ms[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 511ms[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/octet-stream", "x-cache": "HIT", "x-cache-time": "71.084\xc2\xb5s", "content-encoding": "gzip", "content-length": "2429", "x-compressed-size": "2429"}[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:39.708[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第2次请求结果:
- 状态码: 200 OK
- 响应时间: 512ms
- 响应大小: 2429字节
- 缓存状态: HIT
- 压缩编码: gzip
⏳ 等待500ms后继续下一次请求...
🔄 执行第3次请求...
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /large-data[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /large-data[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /large-data[0m
[90m12:10:40.211[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:40.730[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/large-data[0m
[90m12:10:40.730[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/large-data[0m
[90m12:10:40.730[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存命中: GET/large-data[0m
[90m12:10:40.730[0m [30m[46mDEBUG[0m [37m[TRANSFER] L1 缓存命中: GET/large-data[0m
[90m12:10:40.730[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/large-data, found=true[0m
[90m12:10:40.730[0m [30m[46mDEBUG[0m [37m缓存命中! 键: GET/large-data, 耗时: 102.667µs[0m
[90m12:10:40.736[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 87823 bytes,压缩后: 2429 bytes,压缩比: 2.77%[0m
[90m12:10:40.737[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /large-data 200 525ms[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 525ms[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/octet-stream", "x-cache": "HIT", "x-cache-time": "102.667\xc2\xb5s", "content-encoding": "gzip", "content-length": "2429", "x-compressed-size": "2429"}[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:40.737[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第3次请求结果:
- 状态码: 200 OK
- 响应时间: 526ms
- 响应大小: 2429字节
- 缓存状态: HIT
- 压缩编码: gzip
📈 统计结果:
- 平均响应时间: 523.33ms
- 平均响应大小: 2429字节
- 缓存命中率: 2/3 (66.7%)
- 压缩应用率: 3/3 (100.0%)
📊 测试场景: 动态数据 (仅压缩)
路径: /dynamic-data
开始测试...
🔄 执行第1次请求...
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /dynamic-data[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /dynamic-data[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /dynamic-data[0m
[90m12:10:40.738[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:40.941[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/dynamic-data, found=true[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:40.941[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-cache, must-revalidate[0m
[90m12:10:40.941[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:40.941[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/dynamic-data[0m
[90m12:10:40.943[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 2482 bytes,压缩后: 306 bytes,压缩比: 12.33%[0m
[90m12:10:40.943[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /dynamic-data 200 205ms[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 205ms[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/json", "cache-control": "no-cache, must-revalidate", "x-cache": "MISS", "content-encoding": "gzip", "content-length": "306", "x-compressed-size": "306"}[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:40.943[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第1次请求结果:
- 状态码: 200 OK
- 响应时间: 206ms
- 响应大小: 306字节
- 缓存状态: MISS
- 压缩编码: gzip
⏳ 等待500ms后继续下一次请求...
🔄 执行第2次请求...
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /dynamic-data[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /dynamic-data[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /dynamic-data[0m
[90m12:10:41.445[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:41.647[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/dynamic-data, found=true[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:41.647[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-cache, must-revalidate[0m
[90m12:10:41.647[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:41.647[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/dynamic-data[0m
[90m12:10:41.649[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 2481 bytes,压缩后: 305 bytes,压缩比: 12.29%[0m
[90m12:10:41.649[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /dynamic-data 200 203ms[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 203ms[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/json", "cache-control": "no-cache, must-revalidate", "x-cache": "MISS", "content-encoding": "gzip", "content-length": "305", "x-compressed-size": "305"}[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:41.649[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第2次请求结果:
- 状态码: 200 OK
- 响应时间: 204ms
- 响应大小: 305字节
- 缓存状态: MISS
- 压缩编码: gzip
⏳ 等待500ms后继续下一次请求...
🔄 执行第3次请求...
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /dynamic-data[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /dynamic-data[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /dynamic-data[0m
[90m12:10:42.152[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:42.354[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/dynamic-data, found=true[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:42.354[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/dynamic-data[0m
[90m12:10:42.354[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-cache, must-revalidate[0m
[90m12:10:42.355[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:42.355[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/dynamic-data[0m
[90m12:10:42.356[0m [97m[44mINFO [0m [37m🗜️ [Compression] 使用 gzip 压缩,原始大小: 2483 bytes,压缩后: 306 bytes,压缩比: 12.32%[0m
[90m12:10:42.356[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /dynamic-data 200 204ms[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 204ms[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "application/json", "cache-control": "no-cache, must-revalidate", "x-cache": "MISS", "content-encoding": "gzip", "content-length": "306", "x-compressed-size": "306"}[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:42.356[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第3次请求结果:
- 状态码: 200 OK
- 响应时间: 205ms
- 响应大小: 306字节
- 缓存状态: MISS
- 压缩编码: gzip
📈 统计结果:
- 平均响应时间: 205.00ms
- 平均响应大小: 306字节
- 缓存命中率: 0/3 (0.0%)
- 压缩应用率: 3/3 (100.0%)
📊 测试场景: 原始数据 (无处理)
路径: /raw-data
开始测试...
🔄 执行第1次请求...
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /raw-data[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /raw-data[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /raw-data[0m
[90m12:10:42.357[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:42.409[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/raw-data, found=true[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:42.409[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-store[0m
[90m12:10:42.409[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/raw-data[0m
[90m12:10:42.409[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /raw-data 200 52ms[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 52ms[0m
[90m12:10:42.409[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:42.410[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "text/plain", "cache-control": "no-store", "x-cache": "MISS"}[0m
[90m12:10:42.410[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:42.410[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:42.410[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第1次请求结果:
- 状态码: 200 OK
- 响应时间: 52ms
- 响应大小: 2字节
- 缓存状态: MISS
- 压缩编码: none
⏳ 等待500ms后继续下一次请求...
🔄 执行第2次请求...
[90m12:10:42.912[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /raw-data[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /raw-data[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /raw-data[0m
[90m12:10:42.913[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:42.964[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/raw-data, found=true[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:42.964[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-store[0m
[90m12:10:42.964[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/raw-data[0m
[90m12:10:42.964[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /raw-data 200 51ms[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 51ms[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "text/plain", "cache-control": "no-store", "x-cache": "MISS"}[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:42.964[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第2次请求结果:
- 状态码: 200 OK
- 响应时间: 52ms
- 响应大小: 2字节
- 缓存状态: MISS
- 压缩编码: none
⏳ 等待500ms后继续下一次请求...
🔄 执行第3次请求...
[90m12:10:43.466[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 收到请求: GET /raw-data[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 请求头: {"accept-encoding": "gzip, deflate, br", "accept": "*/*", "host": "127.0.0.1:3001"}[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 开始路由处理...[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37m🔍 [Router] 处理 HTTP 请求: GET /raw-data[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37mℹ️ [Router] 协议检测已在 TCP 层完成[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37m🔍 [Router] 匹配到标准路由: GET /raw-data[0m
[90m12:10:43.467[0m [30m[46mDEBUG[0m [37m🔍 [Router] apply_cache 方法被调用[0m
[90m12:10:43.517[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 生成的缓存键: GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 操作: key=GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m[CACHE] L1 缓存未命中: GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m[CACHE] L2 缓存未命中: GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m[CACHE] 缓存未命中: GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m[CACHE] 🎯 [RatMemCache] GET 结果: key=GET/raw-data, found=true[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m缓存未命中! 键: GET/raw-data[0m
[90m12:10:43.517[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检查Cache-Control头: no-store[0m
[90m12:10:43.517[0m [97m[44mINFO [0m [37m🎯 [CacheMiddleware] 检测到no-cache/no-store,响应不可缓存[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m响应不可缓存,跳过缓存! 键: GET/raw-data[0m
[90m12:10:43.517[0m [97m[44mINFO [0m [37m📊 127.0.0.1 GET /raw-data 200 50ms[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 路由处理成功,总耗时: 50ms[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应状态码: 200 OK[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应头: {"content-type": "text/plain", "cache-control": "no-store", "x-cache": "MISS"}[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 响应体类型: Full<Bytes>[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] 准备返回响应给 Hyper...[0m
[90m12:10:43.517[0m [30m[46mDEBUG[0m [37m🔍 [HyperAdapter] handle_request 方法即将返回[0m
第3次请求结果:
- 状态码: 200 OK
- 响应时间: 51ms
- 响应大小: 2字节
- 缓存状态: MISS
- 压缩编码: none
📈 统计结果:
- 平均响应时间: 51.67ms
- 平均响应大小: 2字节
- 缓存命中率: 0/3 (0.0%)
- 压缩应用率: 0/3 (0.0%)
✅ 性能测试完成!
📋 测试总结:
🎯 小数据: 应该主要使用缓存策略,减少计算开销
🎯 大数据: 应该使用缓存+压缩策略,优化存储和传输
🎯 动态数据: 应该使用压缩策略,减少传输开销
🎯 原始数据: 应该跳过缓存和压缩,最小化处理开销