我需要从redis服务器获得大约10k的哈希值。由于没有命令在redis中获取多个哈希值,因此我使用db.HashGetAllAsync()
调用迭代所有键,然后等待所有任务完成。即使它有效,我也看到在这些调用过程中RedisLabs仪表板出现了明显的延迟峰值。
有没有办法同时获得多个哈希值?也许在这种情况下有任何ConnectionMultiplexer
设置可能会有所帮助?
答案 0 :(得分:2)
没有varadic hgetall
,所以是的:最简单的方法是管道大量的个人hgetall
。你甚至可能做的唯一另一件事就是使用Lua脚本(eval
/ evalsha
)在每个项目中生成多个项目,但我可以'看看这会如何减少服务器负载或带宽,所以它似乎不值得尝试!
无论哪种方式,是的:这将在服务器上产生一些工作。