获取在 Appfabric 缓存中逐出对象时与对象关联的标记的详细信息



>我在 C#.net 框架中使用 Appfabric 缓存版本 1.1,目前我想在某个特定对象被逐出时获取与该对象关联的标签列表。

经过一些研究,我发现我们可以使用 Appfabric 提供的通知来捕获对象从缓存中删除时的详细信息。

http://msdn.microsoft.com/en-us/library/ff424507(v=azure.10).aspx(也参考Microsoft Hammad Rajjoub的Windows Server AppFabric Cookbook)

但是从回调函数获得的详细信息不包含我要检索的标签列表。

获取标签列表的主要目的是删除与这些标签关联的所有其他对象,因为我应该存储在缓存中的数据是相关的。

欢迎任何想法或不同的方法。

AppFabric 不会提供包含已删除项目的元数据。此外,正如@stuartd所提到的,当由于逐出而删除项目时,不会调用回调。

除了Appfabric之外,还有其他缓存解决方案提供了这种恐惧。像NCache允许注册项目级事件通知,并指定触发通知时所需的信息类型。您可以注册事件通知以仅获取项目元数据。

NCache还允许添加与项的键依赖关系,以设置一个依赖于任何其他项的项目。这样,如果出于任何原因删除了依赖项,则会自动删除所有依赖项。遗憾的是,密钥依赖关系功能在 AppFabric 中也尚不可用。

最新更新