有一个问题,无法缓存影响我们系统负载的东西。
由于一个错误,我的代码调用了一个参数不正确的服务,该服务当然返回了 404、null、空。基本上,没有找到满足要求的东西。没有找到任何东西的事实被返回给缓存响应的过程。我的缓存系统不允许我们缓存 null 值,因此我们基本上无法缓存响应或没有响应的事实,因此每次发生这种情况时我们都必须进行实时调用。由于这个错误,它发生了很多。
我当然已经修复了这个错误,但我的问题是是否有和/或应该有一种方法来缓存无法找到某些资源的事实。如果我们能有这样一个安全网,那么这个错误就不会那么严重了。
是否应该有一种方法来缓存未找到或未找到的事实?为什么或者为什么不?
我正在使用带有 spymemcached 客户端的 memcache 服务器,并且我的代码是用 Java 编写的,尽管我的问题应该与这一事实无关。也许其他实现可以提供 cacheKey exists 方法或类似的东西。我对此进行了研究,但在 Java 世界中没有发现任何我认为适合我的情况的东西。即使有,由于公司标准,我可能无法切换到它。