redis集群如何高效批量操作?
How to operate on batches with high efficiency in redis cluster?
我有一个map数据要缓存在redis集群中,比如:
{
"demoKey:{1}":{"key1":"value1"},
"demoKey:{2}":{"key2":"value2"},
"demoKey:{3}":{"key3":"value3"}
}
如果使用 lua script
,我会在访问集群节点中的非本地键时出现 RedisCommandExecutionException。
我知道有一种方法可以通过标记 {demokey}
来避免访问非本地密钥时出现 RedisCommandExecutionException,但它会导致所有数据缓存在同一个槽中,这是一个好方法吗?
我也可以使用RedisTemplate
实例迭代缓存数据,但是效率高吗?
感谢您的帮助。
您的问题的答案都取决于应用程序和用例。
... it leads to all data cache in the same slot, is it a good way?
如果相同hashtag的数据量不多,比如不超过一百个,应该没问题。
但如果数量很大,比如几十万甚至更多,就不太可能是个好主意。那样的话,
... to cache data iteratively
是您可能不得不选择的选项。
我有一个map数据要缓存在redis集群中,比如:
{
"demoKey:{1}":{"key1":"value1"},
"demoKey:{2}":{"key2":"value2"},
"demoKey:{3}":{"key3":"value3"}
}
如果使用 lua script
,我会在访问集群节点中的非本地键时出现 RedisCommandExecutionException。
我知道有一种方法可以通过标记 {demokey}
来避免访问非本地密钥时出现 RedisCommandExecutionException,但它会导致所有数据缓存在同一个槽中,这是一个好方法吗?
我也可以使用RedisTemplate
实例迭代缓存数据,但是效率高吗?
感谢您的帮助。
您的问题的答案都取决于应用程序和用例。
... it leads to all data cache in the same slot, is it a good way?
如果相同hashtag的数据量不多,比如不超过一百个,应该没问题。
但如果数量很大,比如几十万甚至更多,就不太可能是个好主意。那样的话,
... to cache data iteratively
是您可能不得不选择的选项。