java在每个请求上获取memcache变量导致问题
我使用gaemcache在每个请求上获取一个布尔值。此布尔值是启用/禁用特定url的标志
如果为真,则一切正常;如果为假,则返回特定格式的响应
这项服务每秒处理7个请求,问题是谷歌似乎对访问memcache设置了限制,而从几天前开始,这项获取一直以每秒1个请求的速度失败,因此这一过程变得完全不可靠。我必须做一个紧急补丁从代码中删除这个检查。但我需要一个替代例程来启用/禁用该服务
使用servlet实例变量是一种选择,但每个jvm实例都有自己的变量,因此无法工作
有人能建议一种方法吗
# 1 楼答案
为了保持一致性,最好使用数据存储/事务而不是memcache
为了减少数据存储/事务的延迟,您可以尝试混合使用memcache和数据存储/事务方法。比如说
# 2 楼答案
对访问memcache的频率没有限制(除了健全性检查)。但是,无论如何,您都不应该仅仅依靠memcache来存储值;您应该始终有一个回退到永久存储机制(如数据存储)的方法