内容简介:redis于3.2版本加入了geohash的数据库结构。使坐标的计算变得非常方便。 下面对redis的geohash做性能测试,看可以支持怎样的并发。压测客户端使用go语言编码。所有代码在:我们分别产生10000,100000,1000000个数据加入到redis,然后再随机生产一个坐标来去计算与redis里的坐标小于10千米的点。
redis于3.2版本加入了geohash的数据库结构。使坐标的计算变得非常方便。 下面对 redis 的geohash做性能测试,看可以支持怎样的并发。
环境
redis版本:使用了 docker 的redis:5-alpine的版本。
服务器配置如下图:压测客户端使用 go 语言编码。所有代码在: redis-geo-test
我们分别产生10000,100000,1000000个数据加入到redis,然后再随机生产一个坐标来去计算与redis里的坐标小于10千米的点。
因为redis是单线程程序,cpu最高跑到100%,在生产环境,CPU超过80%就高负载,要考虑扩容了。 所以我们以80%的负载做临界点来看qps。
结果
在原始数据为10000的情况下,20个并发,每个并发sleep 500微秒,cpu压力83%左右,内存使用5.5MB,qps 26000。 结果如下图:
在原始数据为100000的情况下,20个并发,每个并发sleep 600微秒,cpu压力84%左右,内存使用14MB,qps 22000。 结果如下图:
在原始数据为1000000的情况下,20个并发,每个并发sleep 1500微秒,cpu压力84%左右,内存使用102MB,qps 10000。 结果如下图:
对比如下表:
原始数据大小 | mem | 80%cpu qps |
---|---|---|
10000 | 5.5MB | 26000 |
100000 | 14MB | 22000 |
1000000 | 102MB | 10000 |
以上所述就是小编给大家介绍的《redis geohash的性能测试》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 微服务测试之性能测试
- Go 单元测试和性能测试
- 性能测试vs压力测试vs负载测试
- SpringBoot | 第十三章:测试相关(单元测试、性能测试)
- Golang 性能测试 (2) 性能分析
- 随行付微服务测试之性能测试 原 荐
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
推荐系统与深度学习
黄昕、赵伟、王本友、吕慧伟、杨敏 / 清华大学出版社 / 2019-1-1 / 65.00元
本书的内容设置由浅入深,从传统的推荐算法过渡到近年兴起的深度学习技术。不管是初学者,还是有一定经验的从业人员,相信都能从本书的不同章节中有所收获。 区别于其他推荐算法书籍,本书引入了已被实践证明效果较好的深度学习推荐技术,包括Word2Vec、Wide & Deep、DeepFM、GAN 等技术应用,并给出了相关的实践代码;除了在算法层面讲解推荐系统的实现,还从工程层面详细阐述推荐系统如何搭建.一起来看看 《推荐系统与深度学习》 这本书的介绍吧!