C# 在Windows计算机上跨.Net中的应用程序进行缓存
我试图在.Net中实现缓存,这样缓存的数据不仅可以由在同一台机器上运行多次的应用程序访问,还可以由在该机器上运行的其他类型的应用程序访问。它们可以是windows服务、web服务、win表单等 我已经将System.Runtime.Caching(因为企业应用程序块缓存将变得过时)作为实现这一点的一种方法。默认的MemoryCache不足以实现这一点,因为我认为它不能跨应用程序域工作 是否有一种方法可以实现我正在寻找的缓存类型,或者是否有某种缓存dll(必须是免费的)可以用来实现我的目标 有没有一种方法可以将System.Runtime.Caching与作用域为MachineLevel的IsolatedStorage一起使用 我也看过memcache,但不能使用它,因为我们需要它在windows机器上运行。我开始看SharedCache(http://www.codeproject.com/KB/web-cache/AdvanceCaching.aspx)我也对它的陷阱感到好奇 谢谢C# 在Windows计算机上跨.Net中的应用程序进行缓存,c#,.net,caching,C#,.net,Caching,我试图在.Net中实现缓存,这样缓存的数据不仅可以由在同一台机器上运行多次的应用程序访问,还可以由在该机器上运行的其他类型的应用程序访问。它们可以是windows服务、web服务、win表单等 我已经将System.Runtime.Caching(因为企业应用程序块缓存将变得过时)作为实现这一点的一种方法。默认的MemoryCache不足以实现这一点,因为我认为它不能跨应用程序域工作 是否有一种方法可以实现我正在寻找的缓存类型,或者是否有某种缓存dll(必须是免费的)可以用来实现我的目标 有没有
--第1版--
我认为对我来说,最佳的解决方案是将缓存对象用于内存映射文件(http://msdn.microsoft.com/en-us/library/dd997372.aspx). 因此,我现在的问题是,是否有人对System.Runtime.Caching对象执行了此操作。如果有必要,必须有一种方法来扩展它……我们也非常感谢您提供如何扩展的示例。您正在寻找的。这是微软的Windows服务器技术。它是免费的
我还应该说,如果您喜欢memcached,您也可以在Windows上使用它,事实上,在Windows Azure上提供AppFabric缓存之前,Microsoft Azure团队成员曾经推荐过它。您评估过Microsoft Velocity吗?看一看-我相信,如果您对使用AppFabric缓存不满意,这应该适合您:
对于简单的基于客户端的缓存,您可以查看基于文件的缓存。我正在尝试在客户端机器上实现缓存…在所有机器上运行AppFabric可能不可行。我只是在寻找一个机器范围内的缓存方案..仅此而已..只需一个简单的dll即可完成此任务:-)如果需要,可以使用MemCached的AppFabric+1。还取决于你的实际需求(除了在不同的帐户和其他有趣的东西中创建可供选择的本地缓存)之外,你还可以考虑使用浏览器所使用的路由——简单的基于文件的本地缓存。阿列克谢- AppFaby是一个很好的工具。但是,它不是我可以在运行xp的客户机上使用的东西。基于文件的本地缓存是一个可行的想法。你知道System.Runtime.Cache是否支持基于文件的本地缓存吗?Sajoshi-是的,我已经看过Velocity。这是一个伟大的工具,将使我们的生活更容易…只是不是今天。它还没有生产准备好,但当它是,我肯定会花时间与它。