c#如何在外部清除网站的缓存

我在网站里使用了system.runtime.cache 来缓存东西。我想定期删除这些缓存,另外写了个服务定期执行。但是却不知道如何去删除,直接使用Cache.Remove是不行的。

阅读 5.5k
2 个回答

你使用的是进程内缓存,在外部的定时服务里肯定清不掉,服务里的Cache.Remove是remove掉服务进程内的缓存,它们是两个独立的个体。

外部服务是没办法直接访问你的网站所在进程的,提供两个方案:
1. 使用进程外的独立缓存,如memcache等,这个成本有点高,没太大必要。
2. 你的网站公开一个asmx或者其他形式,提供remove缓存的服务,外部服务定时调下这个借口。提醒:因为你的网站是公开的,所以自己保证接口的安全性,别被人刷了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进