我为我的网站设置了缓存,一小时后过期。 所以我的问题是如果Cache不存在并且多个用户同时访问网站我想避免所有用户同时发出相同的请求。因为这会对CPU使用率产生影响,使其在较长时间内保持在100%。
我正在使用System.Runtime.Caching.MemoryCache。
MVC ASP.NET应用程序。
我想到了一个解决方案,但我不确定如何最好地实现它,我的想法是,
许多用户中的一个将首先进入,并开始一个请求,我设置一个标志来说取数据,然后在任何更多用户进入后,他们将显示没有设置缓存,但在开始请求之前他们如果请求已被触发,将检查标志。如果它有应用程序应该等到响应返回(这可能吗?),然后使用缓存中的响应。 通过这种方式发送一个请求,它将更快地响应服务,响应速度更快,CPU使用率仍然很低。
请建议替代方案,我的想法可能是错误的
有人可以提出建议吗?
由于