gpt4 book ai didi

c# - 在 Windows 计算机上的 .Net 中跨应用程序进行缓存

转载 作者:行者123 更新时间:2023-12-02 18:19:35 24 4
gpt4 key购买 nike

我正在尝试在.Net 中实现缓存,以便缓存的数据不仅可以由可能在同一台计算机上运行多次的应用程序访问,还可以由可能在该计算机上运行的其他类型的应用程序访问。它们可以是 Windows 服务、Web 服务、Win 表单等。

我将 System.Runtime.Caching(因为企业应用程序 block 缓存将变得过时)视为实现此目标的一种方法。默认的 MemoryCache 不足以实现此目的,因为我不相信它可以跨应用程序域工作。

有没有一种方法可以实现我正在寻找的缓存类型,或者是否有某种类型的缓存 dll(必须是免费的)可以用来实现我的目标?

有没有办法将 System.Runtime.Caching 与范围限定为 MachineLevel 的isolatedStorage一起使用?

我也研究过 memcache,但无法使用它,因为我们需要它在 Windows 计算机上运行。我开始研究 SharedCache (http://www.codeproject.com/KB/web-cache/AdvanceCaching.aspx),并对它的缺陷感到好奇。

谢谢。


-- 修订版 1 --


我认为对我来说最佳解决方案是将缓存对象用于内存映射文件 (http://msdn.microsoft.com/en-us/library/dd997372.aspx)。所以我现在的问题是是否有人用 System.Runtime.Caching 对象做到了这一点。如有必要,必须有一种方法来扩展它......我们也将非常感谢如何做到这一点的示例。

最佳答案

您正在寻找AppFabric Cache 。它是 Microsoft 的 Windows Server 技术。它是免费的。

我还应该说,如果您喜欢 memcached,您也可以在 Windows 上使用它,事实上,在 Windows Azure 上提供 AppFabric 缓存之前,Microsoft Azure 团队成员曾经推荐过它.

关于c# - 在 Windows 计算机上的 .Net 中跨应用程序进行缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5150616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com