我们在一个主(根)应用程序中有几个虚拟应用程序。
如果虚拟应用程序和主应用程序位于同一台物理计算机上(并且始终位于同一物理计算机上),如何共享缓存?
通过Cache我假设System.Runtime.Caching或System.Web.Caching。希望我不需要为此设置AppFabric缓存......
答案 0 :(得分:3)
Memcached是一个免费的开源缓存,可作为Windows服务运行。只需定义两个应用程序在memcached对象中用于查找的键,即可轻松完成跨应用程序缓存。
答案 1 :(得分:2)
无法完成。多个asp.net应用程序存在于自己的应用程序域中,并且应用程序域由IIS控制,可以随时循环。这意味着任何缓存都可以使用网络方案(远程处理等),缓存最适合在ASP.NET控件(系统服务)之外。
答案 2 :(得分:2)
虽然其他人已经提到了内置的ASP.NET缓存(System.Web.Caching),但请注意.NET 4.0引入了一个全新的缓存框架,旨在在System.Web.Caching命名空间之外工作:
System.Runtime.Caching
http://msdn.microsoft.com/en-us/library/system.runtime.caching(VS.100).aspx