读取文件属性有多贵?.净

n8w*_*wrl 5 asp.net performance file-io

我们正在尝试将时间戳附加到某些URL以便让事情缓存,但在它们发生变化时刷新它们.我们的代码归结为:

DateTime ts = File.GetLastWriteTime(absPath);
Run Code Online (Sandbox Code Playgroud)

其中absPath是url的MappedPath.因此,每次我们提供文件链接时,Web服务器都将检查此文件的上次写入时间.有点给我了我的意志 - 应该吗?

Chr*_*isW 7

你应该性能测试,但离手,我怀疑这是比任何测试文件的存在(例如,无论是只读),肯定比实际打开文件更便宜更昂贵.

如果(在测试之后)你决定它是一个问题,你也可以缓存你的调用GetLastWriteTime(例如,对于任何给定的文件,不要每5秒调用一次).

此外,我从来没有使用它,但如果缓存是一个问题,我希望你考虑将其实现委托给像Squid这样的专家,而不是自己动手.