我正在使用HttpRuntime.Cache来存储我的网站缓存。问题是每当我想上传一个新的更新的编译版本时,该网站的缓存被删除。 我很想知道如何解决这个问题。 thx提前给所有亲爱的助手。c#asp.net MVC缓存
回答
缓存驻留在内存中 - 一旦您上传了新版本的站点,IIS就会回收应用程序池,这意味着内存被清除并且缓存与它一起使用。
你不能改变这是如何工作的。
您可以将缓存保存到磁盘(或数据库或其他)并读取它,但是您最好让它保持原样。
另一种方法是使用单独的缓存服务器 - 类似于完全独立于IIS的memcached。
使用共享(或分布式)缓存可以解决您的问题。这种缓存也用于webfarm环境中,在这种环境中,多个web服务器需要访问共享缓存中的数据。
看一看AppFabric这是微软的分布式缓存implementaion(免费)
还有许多其他的缓存产品availbale像NCache,MemCached,GemFire或Oracle连贯性,仅举几例。
现在我只有一个网站,而不是一个网络农场。但事情是如果我的静态数据没有被缓存,它将会很慢。 –
要保留iis流程循环中的缓存值,您可以使用与webfarms相同的机制。即使你在一个盒子上运行。不管你怎样称之为“共享”,“分布式”或“进程外”缓存。将缓存从流程中取出不失为一种诀窍,可以将缓存的内容保留在回收站点上。 –
- 1. asp.net mvc - 缓存
- 2. Asp.net MVC 3缓存
- 3. 缓存在asp.net-mvc
- 4. Asp.net MVC 2缓存
- 5. ASP.NET MVC&缓存EF
- 6. ASP.NET MVC - 缓存IQueryable数据
- 7. ASP.NET MVC:缓存组合框
- 8. ASP.NET MVC缓存场景
- 9. ASP.NET MVC 2缓存问题
- 10. Asp.net MVC输出缓存
- 11. 结算Asp.net MVC缓存即
- 12. 缓存Asp.net Mvc主页
- 13. asp.net MVC缓存与分页
- 14. ASP.NET MVC/Azure缓存框架
- 15. ASP.NET MVC 4.0 Chrome缓存
- 16. Asp.NET MVC缓存图像
- 17. ASP.NET MVC 4通读缓存
- 18. ASP.NET MVC - 缓存表格
- 19. 清除缓存?在c#mvc
- 20. C#asp.net的DateTime缓存
- 21. 缓存控制C#ASP.NET
- 22. 在C#中缓存(ASP.NET)
- 23. 我是否应该只使用ASP.net MVC缓存或IIS7缓存?
- 24. asp.net MVC的缓存和Firefox的缓存如何工作?
- 25. ASP.Net MVC不需要的缓存问题
- 26. 流利NHibernate的asp.net MVC缓存
- 27. 只在ASP.NET MVC中缓存MasterPage
- 28. ASP.Net MVC ActionResult返回缓存的View?
- 29. FilterAttributes在ASP.NET MVC中获取缓存吗?
- 30. ASP.NET MVC 2用户控件缓存
memCache存在于内存中,并且适用于小数据。虽然我期望保存大量数据,因此我宁愿使用硬盘来保存数据。 –
@mashtagidi - 你应该真的包含你需要缓存的数据的大小。我真的没有看到使用磁盘作为缓存的重点,因为这与任何事情一样缓慢。 – Oded
“Memcached是用于任意数据(字符串,对象)的小块的内存中键值存储”。我的应用程序需要存储几个密钥,但每个键的大小并不那么大(最大的对象可以包含几千条记录的列表,但通常它是具有20-30个属性的对象)。 memcached是否适合我的需求? –