我有几十台服务器每分钟执行数千个任务。每个任务都需要从RavenDb加载3个对象。这些对象很少变化,例如每天20-30次更改(在数百万次调用Raven中获取它们)。
我被建议使用积极缓存来最小化我的RavenDb上的负载,我做了哪些工作。
但是,当我的工作服务器和Raven服务器之间存在通信问题时,来自Raven的激烈缓存负载会因超时而失败。如果客户端没有收到对象已更改的通知,并且仅使用其缓存值,我怎么能阻止客户端查看Raven?如果默认情况下它没有在内存中保存所有内容,我可以配置缓存的大小吗?
答案 0 :(得分:0)
激进缓存意味着客户端将直接从缓存提供请求(如果可以)。但它没有。
特别是,文档可能不在缓存中(可能已被驱逐),或者我们可能需要访问服务器以查看它是否是最新的,因为我们收到了有关文档更改的通知。
您不能认为积极的缓存不会命中服务器,实际上,它们会计入每个会话配额的请求。