现状:

1、买了一台主从的阿里云Redis,内存就1GB。

2、查询了阿里云的帮助,没有找到性能相关的说明, 有的也是4GB版本的并发性能

3、提工单问客服 一个集合里有300万数据,单次查询性能大概怎么推算,客服让我自己验证(自己的产品性能如何都不知道,还卖货……)

解决方案:自己验证

1、构造300万数据, 写到文件1.txt,将数据写入到集合test500内

sadd test500 long_str10000001
sadd test500 long_str10000002
...
...
sadd test500 long_str13000000

2、在windows电脑上安装redis客户端,并通过命令管道快速导入这300万条命令(不带pipe,只能做到1小时导入30万条;带pipe就十几秒钟导入完成)

redis-cli -h xxx.redis.rds.aliyuncs.com -p 6379 -a password  --pipe <1.txt

3、在python中调用查询某个value,响应时间为0.04~0.08秒 【包括了网络响应的时长】

# -*- coding: utf-8 -*-
import time
import redis class T:
def __init__(self):
pool = redis.ConnectionPool(host='r-xxx.redis.rds.aliyuncs.com', port=6379,
password='xxx', db=1, decode_responses=True)
self.r = redis.Redis(connection_pool=pool)
self.value = 'long_str10000001' if __name__ == '__main__':
t = T()
time_begin = time.clock()
qq = t.r.sismember('test500', 'long_str10031001')
time_end = time.clock()
time2 = time_end - time_begin if qq:
print("数据查询成功,耗时", time2)
else:
print("数据查询失败,耗时", time2)

结论:Redis的某一个集合,放百万数据,查询性能毫无影响。

遗留问题:

该集合是300万数据,每条数据16个字节,数据大小是45M左右,而存放到了阿里云的Redis,占用了200MB空间,这个不符合我的诉求; 需要后期上其他方案,降低内存的占用

阿里云Redis性能测试结果(1个集合存300万数据,查询能几秒返回结果)的更多相关文章

  1. 用StackExchange.Redis客户端连接阿里云Redis服务遇到的问题

    阿里云推荐的Redis服务.NET客户端是ServiceStack.Redis,但ServiceStack.Redis不支持异步,不支持.NET Core,于是尝试使用StackExchange.Re ...

  2. 阿里云 Redis 服务遇到的问题

    ERR unknown command eval 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: St ...

  3. 阿里云ECS连接阿里云Redis问题

    描述 项目之前的服务器使用Windows,Redis使用阿里云的云数据库Redis版,一切正常. 后来了更换了Linux,也配置好了Redis,但连接阿里云的Redis时却怎么也连接不上 原因 ECS ...

  4. 一份完整的阿里云 Redis 开发规范,值得收藏!

    来源:yq.aliyun.com/articles/531067 作者:付磊-起扬 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明. 键值设计 命令使用 客户端使用 相关工具 通 ...

  5. 阿里云Redis开发规范

    转自: https://yq.aliyun.com/articles/531067 摘要: 本文介绍了在使用阿里云Redis的开发规范,从键值设计.命令使用.客户端使用.相关工具等方面进行说明,通过本 ...

  6. Linux通过端口转发来访问内网服务(端口转发访问阿里云Redis数据库等服务)

    # 安装rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz& ...

  7. 阿里云Redis开发规范[转]

    一.键值设计 1. key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)[建议]:简洁性 ...

  8. 使用99元一年的256MB高性能阿里云Redis加速Discuz论坛

    介绍 Discuz是一个常见的论坛,支持使用Redis来对论坛进行加速访问,对于访问量比较大的论坛能够取到很好的作用,本文介绍如何使用阿里云高性价比256MBRedis来加速该论坛. 阿里云Redis ...

  9. 阿里云Redis开发规范(转)

    一.键值设计 1. key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video: (2)[建议]:简洁性 ...

随机推荐

  1. java通过freemarker模板导出pdf

    需求:将网页内容导出为pdf文件,其中包含文字,图片,echarts图 原理:利用freemarker模板与数据渲染所得到的html内容,通过ITextRenderer对象解析html内容生成pdf ...

  2. 「CodeForces 546B」Soldier and Badges 解题报告

    CF546B Soldier and Badges 题意翻译 给 n 个数,每次操作可以将一个数 +1,要使这 n 个数都不相同, 求最少要加多少? \(1 \le n \le 3000\) 感谢@凉 ...

  3. sparkstreaming消费kafka后bulk到es

    不使用es-hadoop的saveToES,与scala版本冲突问题太多.不使用bulkprocessor,异步提交,es容易oom,速度反而不快.使用BulkRequestBuilder同步提交. ...

  4. linux下挂载硬盘出错的解决方法

    我的电脑是 Uuntu16.04 + win10 双系统,今天在Ubuntu中打开D盘时报错 Error mounting /dev/sda5 原因是D盘的格式是ntfs,在linux中会出现不识别的 ...

  5. python条件(三元)运算符

    条件运算符  是 三元运算符 语法: 语句1  if   条件表达式  else  语句2 执行流程: 条件运算符在执行时,会先对条件表达式进行求值判断         如果判断结果为True,则执行 ...

  6. OpenGL ES for Android

    经过半年的准备OpenGL ES for Android系列文章终于要和大家见面了,在这里定一个小目标-先吸引1000个粉丝,万一实现了呢.写关于OpenGL ES的文章开始是有一些犹豫的,因为Ope ...

  7. django 调试工具 django-tool-bar

    这里介绍一个好用的Django调试工具-django-tool-bar,主要用来调试性能,检测sql耗时,页面渲染耗时,是优化必备良器. 安装 下载 pip install django-debug- ...

  8. Java.前端.Layer.open.btn验证无效

    今天遇到了一个很可笑的问题,在.Layer弹窗open中设置了多个按钮,只有yes按钮有效,btn2点击后直接关闭弹窗,排查了2个小时后终于解决,就是btn2要return false! var in ...

  9. 3种基础的 REST 安全机制

    安全是 RESTful web service 的基石,我们主要讨论以下3种主要的方法: Basic authentication Oauth 2.0 Oauth 2.0 + JWT 1. Basic ...

  10. equals()和hashCode()必须同时覆盖的原因

    我们在用JAVA创建自己的类的时候,一种比较常见的覆盖就是覆盖Object中的equals()方法和hashCode()方法.如果不这样做的话,就很可能违反Object.hashCode()的通用约定 ...