【发布时间】:2010-06-07 21:58:00
【问题描述】:
我有一个与音乐相关的 ASP.NET 网站,它在第一次请求时缓存了数据库中的大量静态信息。
有时,应用程序在负载过重时会重置应用程序并清除缓存,然后所有 http 请求都会转到数据库以检索该静态数据并将其缓存以供其他请求使用。
如何确保只有一个请求进入数据库并缓存结果,以便其他请求只需从缓存中读取该信息,而不必一遍又一遍地检索相同的信息。
我可以使用线程锁定吗?例如,我可以执行 lock(this) { db access here } 之类的操作吗?
【问题讨论】:
标签: asp.net multithreading sql-server-2008