redis geohash的性能测试

栏目: 数据库 · 发布时间: 5年前

内容简介:redis于3.2版本加入了geohash的数据库结构。使坐标的计算变得非常方便。 下面对redis的geohash做性能测试,看可以支持怎样的并发。压测客户端使用go语言编码。所有代码在:我们分别产生10000,100000,1000000个数据加入到redis,然后再随机生产一个坐标来去计算与redis里的坐标小于10千米的点。

redis于3.2版本加入了geohash的数据库结构。使坐标的计算变得非常方便。 下面对 redis 的geohash做性能测试,看可以支持怎样的并发。

环境

redis版本:使用了 docker 的redis:5-alpine的版本。

服务器配置如下图: redis geohash的性能测试

压测客户端使用 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。 结果如下图: redis geohash的性能测试

在原始数据为100000的情况下,20个并发,每个并发sleep 600微秒,cpu压力84%左右,内存使用14MB,qps 22000。 结果如下图: redis geohash的性能测试

在原始数据为1000000的情况下,20个并发,每个并发sleep 1500微秒,cpu压力84%左右,内存使用102MB,qps 10000。 结果如下图: redis geohash的性能测试

对比如下表:

原始数据大小 mem 80%cpu qps
10000 5.5MB 26000
100000 14MB 22000
1000000 102MB 10000

以上所述就是小编给大家介绍的《redis geohash的性能测试》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

莱昂氏UNIX源代码分析

莱昂氏UNIX源代码分析

(澳)John Lions / 尤晋元 / 机械工业出版社 / 2000-7-1 / 49.00

本书由上、下两篇组成。上篇为UNIX版本6的源代码,下篇是莱昂先生对UNIX操作系统版本6源代码的详细分析。本书语言简洁、透彻,曾作为未公开出版物广泛流传了二十多年,是一部杰出经典之作。本书适合UNIX操作系统编程人员、大专院校师生学习参考使用。一起来看看 《莱昂氏UNIX源代码分析》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试