登录
首页 >  Golang >  Go问答

redis中mget()的时间复杂度是多少?

来源:stackoverflow

时间:2024-02-28 15:36:26 250浏览 收藏

大家好,我们又见面了啊~本文《redis中mget()的时间复杂度是多少?》的内容中将会涉及到等等。如果你正在学习Golang相关知识,欢迎关注我,以后会给大家带来更多Golang相关文章,希望我们能一起进步!下面就开始本文的正式内容~

问题内容

这个库有mget实现https://github.com/go-redis/redis。看起来时间复杂度是O(N),其中n是键的数量

https://github.com/wuxibin89/redis-go-cluster 这里时间复杂度为O(N /集群中节点总数)

redis 中默认的 mget() 实现的时间复杂度如何?


解决方案


这是您发送的库中该方法的实现:https://github.com/wuxibin89/redis-go-cluster/blob/222d81891f1d3fa7cf8b5655020352c3e5b4ec0f/multi.go#L99

看起来它对每个节点 https://github.com/wuxibin89/redis-go-cluster/blob/222d81891f1d3fa7cf8b5655020352c3e5b4ec0f/multi.go#L144 并发执行每个任务并等待响应

我认为它应该以不同的方式工作 - 库将请求发送到主 Redis 集群,集群应该处理复制等。这可能是性能下降的情况。

请考虑另一个库,例如 https://github.com/go-redis/redis

本篇关于《redis中mget()的时间复杂度是多少?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>