BuildingBlocks.Caching—IHybridRequestCachesoyutlaması;Microsoft.Extensions.Caching.Hybrid(HybridCache) üzerine stampede protection + tag-based invalidation + multi-instance broadcast hook ekler.BuildingBlocks.Caching.Redis— L2 backend’i;IDistributedCacheimplementasyonları ve distributed lock sağlar.
Üst seviye cache mimarisi (L1/L2 stratejisi, invalidation, multi-instance) Cache Mimarisi grubunda anlatılır. Bu sayfa paket arayüzlerine odaklanır.
IHybridRequestCache
HybridCache’i doğrudan inject etmek yerine bu arayüz kullanılır — domain-friendly imza ve multi-instance broadcast hook için.
CacheOptions
Cache bölümüne bind edilir. Yalnızca spec/DB query cache’ini (CachedRepository) etkiler; auth/token cache’leri (UserContext, JWKS, PKCE) HybridCache’i doğrudan kullanır ve bu bayraklardan etkilenmez.
IRemoteTagBroadcaster çok-instance tag broadcast kontratıdır; varsayılan NoopRemoteTagBroadcaster (tek-node). Multi-pod’da Application katmanı bunu MassTransit/Redis pub-sub implementasyonuyla değiştirir.
DI kaydı — AddCache
BuildingBlocks.Caching.Redis
L2 backend’i ve distributed lock sağlayan paket.
DistributedLockOptions: RedisDistributedLocking (aç/kapa), Expiry (lock TTL — Expiry/2’de auto-renew).
DI kaydı — AddRedisCache
Kullanım
İlgili
Hibrit cache
L1/L2 katman davranışı ve stampede protection.
Invalidation
Tag-based eviction ve domain event entegrasyonu.
Multi-instance
Broadcast ile node’lar arası L1 senkronu.
Specification
Spec üzerinde EnableCache/WithTags entegrasyonu.