Skip to content

Commit d23f963

Browse files
author
Wilson Neto B.R.
authored
Adding important notes to caching HybridCache docs
Adding warnings regarding: - Remove by tags hasn't been implemented yet. - Inconsistent multi-node in-memory cache after invalidation on other nodes.
1 parent 9771604 commit d23f963

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

aspnetcore/performance/caching/hybrid.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
---
1+
![image](https://github.com/user-attachments/assets/4ab2cb54-5bb8-41f3-b1b0-449c999f8ae0)---
22
title: HybridCache library in ASP.NET Core
33
author: tdykstra
44
description: Learn how to use HybridCache library in ASP.NET Core.
@@ -73,6 +73,9 @@ When an entry is removed, it is removed from both the primary and secondary cach
7373

7474
## Remove cache entries by tag
7575

76+
> [!IMPORTANT]
77+
> This feature is still under development. If you try to remove entries by tag, you will notice that it won't cause any effect.
78+
7679
Tags can be used to group cache entries and invalidate them together.
7780

7881
Set tags when calling `GetOrCreateAsync`, as shown in the following example:
@@ -145,6 +148,8 @@ For more information, see the [HybridCache serialization sample app](https://git
145148

146149
By default `HybridCache` uses <xref:System.Runtime.Caching.MemoryCache> for its primary cache storage. Cache entries are stored in-process, so each server has a separate cache that is lost whenever the server process is restarted. For secondary out-of-process storage, such as Redis or SQL Server, `HybridCache` uses [the configured `IDistributedCache` implementation](xref:performance/caching/distributed), if any. But even without an `IDistributedCache`implementation, the `HybridCache` service still provides in-process caching and [stampede protection](https://en.wikipedia.org/wiki/Cache_stampede).
147150

151+
One important thing to also keep in mind is that when invalidating the cache by key or by tags, it will be invalidated in the current node and in the secondary out-of-process storage, but the other nodes in-memory cache isn't invalidated.
152+
148153
## Optimize performance
149154

150155
To optimize performance, configure `HybridCache` to reuse objects and avoid `byte[]` allocations.

0 commit comments

Comments
 (0)