代码之家  ›  专栏  ›  技术社区  ›  SnickersAreMyFave

C#.NET Memcached:添加具有文件依赖关系的项?

  •  0
  • SnickersAreMyFave  · 技术社区  · 14 年前

    我们有一个12台服务器的网络农场,所有服务器都运行着完全相同的站点。

    每当此文件发生更改时,在12台服务器中的任何一台上,都应清除此文件的缓存版本,并用新版本的内容替换。

    为此,每个web服务器都使用一个FileSystemWatcher并监视其版本的配置.xml,并在文件更改时删除缓存的内容。

    当我们想改变的时候配置.xml,我们将一个新版本上载到所有12个web服务器。问题是,每个web服务器都用其FileSystemWatcher检测到更改,并且所有12个web服务器都删除缓存的值,并放入新的contents值。

    换句话说,当我们只希望清除文件更改缓存依赖项执行一次时,它执行12次(因为所有12个副本都是相同的)。

    什么是解决方案?

    1 回复  |  直到 13 年前
        1
  •  3
  •   Wrikken    14 年前

    让服务器获取缓存的内容,将其与文件进行比较,并且仅当memcache的内容与文件的内容不匹配时才对其进行更改。