假设我有 30 秒的缓存,生成缓存的 db 请求需要 2 秒,我每秒收到 100 个请求,当缓存需要刷新时会发生什么?
我怀疑我的数据库被击中 200 次。我想要发生的事情是让第一个通过,然后告诉其他人返回缓存,所以基本上在 30 秒之后,缓存的第一次尝试在这里什么也没说,但是剩下的得到以前存在的东西,直到让通过的那个更新它。
我必须在应用程序级别执行此操作,还是可以将 memcache 配置为执行此操作?
假设我有 30 秒的缓存,生成缓存的 db 请求需要 2 秒,我每秒收到 100 个请求,当缓存需要刷新时会发生什么?
我怀疑我的数据库被击中 200 次。我想要发生的事情是让第一个通过,然后告诉其他人返回缓存,所以基本上在 30 秒之后,缓存的第一次尝试在这里什么也没说,但是剩下的得到以前存在的东西,直到让通过的那个更新它。
我必须在应用程序级别执行此操作,还是可以将 memcache 配置为执行此操作?