Hiệu suất & Cache
Nén, cache đa tầng, Razor và request buffering
Hiệu suất & Cache
Nén & Minification
- WebOptimizer: Nén CSS/JS cho tất cả assets
- WebMarkupMin: Nén HTML + Brotli/GZip/Deflate (ưu tiên Brotli)
- Thứ tự Pipeline: UseWebOptimizer() → UseStaticFiles() → UseWebMarkupMin()
Cache (đa tầng)
- Output Cache: Lưu HTML đã render trong memory. Page = 120s TTL, Sitemap = 30 phút
- Browser Cache: public, max-age=120, stale-while-revalidate=60
- Static File Cache: /assets/, /css/, /scripts/ → 1 năm immutable; /uploads/ → 7 ngà y
- Sitemap Memory Cache: 30 phút trong IMemoryCache
Razor
- Runtime Compilation: Chỉ báºt trong Development (tiết kiệm ~200MB RAM production)
- Precompiled views: RazorCompileOnBuild=true
Request Buffering
- Global buffering tắt: BufferBody = false
- Selective buffering: Chỉ endpoint cần re-read body má»›i báºt