diff --git a/docs/Backplane.md b/docs/Backplane.md index 5cc6fd22..c9f1a87b 100644 --- a/docs/Backplane.md +++ b/docs/Backplane.md @@ -74,7 +74,7 @@ With auto-recovery enabled FusionCache will detect notifications that failed to Special care has been put into correctly handling some common situations, like: - if more than one notification is about to be queued for the same cache key, only the last one will be kept since the result of sending 2 notifications for the same cache key back-to-back would be the same - if a notification is received for a cache key for which there is a queued notification, only the most recent one is kept: if the incoming one is newer, the local one is discarded and the incoming one is processed, otherwise the incoming one is ignored and the local one is sent to the other nodes. This avoids, for example, evicting an entry from a local cache if it has been updated after a change in a remote node, which would be useless -- it is possible to set a limit in how many notifications to keep in the queue via the `BackplaneAutoRecoveryMaxItems` option (default value: `100`, can be `null` to remove any limit) to avoid consuming too much memory or to bombard the backplane as soon as it will become available again. If a notification is about to be queued but the limit has already been reached, an heuristic is used that will remove the notification for the cache entry with the lowest `Duration`, so to lower as possible the impact on the global shared state synchronization. +- it is possible to set a limit in how many notifications to keep in the queue via the `BackplaneAutoRecoveryMaxItems` option (default value: `100`, can be `null` to remove any limit) to avoid consuming too much memory or to bombard the backplane as soon as it will become available again. If a notification is about to be queued but the limit has already been reached, an heuristic is used that will remove the notification for the cache entry that will expire sooner (instant when the notification has been created + cache entry `Duration`), so as to limit as possible the impact on the global shared state synchronization. **🧪 NOTE:** auto-recovery is available since version `0.14.0`, but it is disabled by default as is considered experimental. As soon as the feature will be tested out in real world projects without any issue, it will probably be enabled by default.