redis-cli

Redis 6.0 TLS支持

こ雲淡風輕ζ 提交于 2020-08-05 08:32:20
原文: https://redis.io/topics/encryption 翻译:Wen Hui 转载:中间件小哥 Redis从版本6开始支持SSL / TLS,这是一项可选功能,需要在编译时启用。 编译 要使用TLS支持进行构建,你需要OpenSSL开发库(例如Debian / Ubuntu上的libssl-dev)。 运行make BUILD_TLS = yes。 验证 要使用TLS运行Redis测试套件,你需要TCL的TLS支持(即Debian / Ubuntu上的tcl-tls软件包)。 运行./utils/gen-test-certs.sh生成根CA证书和服务器证书。 运行./runtest --tls或./runtest-cluster --tls,以TLS模式运行Redis和Redis集群测试。 手动运行 要以TLS模式手动运行Redis服务器(假设已调用gen-test-certs.sh,因此示例证书/密钥可用): ./src/redis-server --tls-port 6379 --port 0 \ --tls-cert-file ./tests/tls/redis.crt \ --tls-key-file ./tests/tls/redis.key \ --tls-ca-cert-file ./tests/tls/ca.crt 使用redis

Redis监控命令详解

喜夏-厌秋 提交于 2020-08-05 07:52:47
bigkeys redis-client.exe --bigkeys PS D:\RedisCache> .\redis-cli.exe -- bigkeys # Scanning the entire keyspace to find biggest keys as well as # average sizes per key type. You can use -i 0.1 to sleep 0.1 sec # per 100 SCAN commands (not usually needed). [ 00.00%] Biggest hash found so far 'bigkeys1' with 7135 fields [ 00.00%] Biggest hash found so far 'bigkeys2' with 2555363 fields -------- summary ------- Sampled 17 keys in the keyspace! Total key length in bytes is 268 (avg len 15.76 ) Biggest hash found 'bigkeys2' has 2555363 fields 0 strings with 0 bytes (00.00% of keys, avg size 0.00 ) 0

【VMWare虚拟机Centos7安装配置redis及Redis常用命令合集】

*爱你&永不变心* 提交于 2020-08-05 02:51:23
前置依赖 1.Redis依赖gcc和tcl环境,所以要先安装gcc和tcl 执行下面语句安装gcc: yum install gcc - c + + 若提示是否继续,输入y继续安装 执行下面语句安装tcl: yum install - y tcl 下载redis解压并安装 1.下载redis安装包 wget http: //download.redis.io/releases/redis-3.2.8.tar.gz 下载完成可在用户主目录看到redis-3.2.8.tar.gz 2.解压安装包 tar xzf redis - 3.2 .8 . tar . gz 解压完成后得到redis-3.2.8文件 3.进入redis目录,编译安装redis cd redis - 3.2 .8 编译 make 安装 make install 出现上面界面表示安装成功 启动redis 1.使用下面命令启动redis . / src / redis - server 出现以下界面代表启动成功: 按ctrl+c可退出当前界面 修改redis配置文件 1.找到redis配置文件redis.conf 2.使用 vi redis.conf 命令进入配置文件 3.修改 1)注释bind 127.0.0.1 2)redis默认不是以守护线程的方式运行,默认以前端模式运行,修改daemonize为yes,即修改为

ubuntu18 Docker 安装 redis

喜欢而已 提交于 2020-08-04 20:56:55
#0. 访问 hub.docker.com 主要是获得安装软件的信息及文档 #1. docker search 软件名称 docker search redis #2. docker pull 软件名:版本号 docker pull redis:5.0 #3. docker run 主要是通过hub.docker.com提供的文档设置 docker run --name redis0 -p6379:6379 -d redis:5.0 #4.docker ps -a # 查看docker的运行状态 docker ps -a #5.通过第三方软件连接软件 #RedisDesktopManager 进行测试连接 #服务器端连接redis-cli docker exec -it redis0 redis-cli 来源: oschina 链接: https://my.oschina.net/u/2255699/blog/4303866

Redis的安装与idea中的使用

不打扰是莪最后的温柔 提交于 2020-08-04 11:44:46
一、Redis的安装 Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。 官方下载地址: http://redis.io/download ,不过官方没有64位的Windows下的可执行程序。 目前有个开源的托管在github上, 地址: https://github.com/ServiceStack/redis-windows 点击这个地方,下载文件并解压到自己的电脑目录下。 本文使用版本: redis64-3.0.501.zip 解压后目录如下: 文件名 简要 redis-benchmark.exe 基准测试 redis-check-aof.exe aof redischeck-dump.exe dump redis-cli.exe 客户端 redis-server.exe 服务器 redis.windows.conf 配置文件 然后编辑 redis.windows.conf 文件,我看网上有的教程说编辑里边 maxheap <bytes> ,但是3.x版本以后,修改的是 maxmemory <bytes> , bytes是字节,请自行换算,我这里改成

redis 大key 问题

空扰寡人 提交于 2020-07-29 00:51:26
命令:redis-cli ******* --bigkeys redis-cli --bigkeys的优点是可以在线扫描,不阻塞服务;缺点是信息较少,内容不够精确。扫描结果中只有string类型是以字节长度为衡量标准的。List、set、zset等都是以元素个数作为衡量标准,元素个数多不能说明占用内存就一定多 处理方法: 由于redis是单线程运行的,如果一次操作的value很大会对整个redis的响应时间造成负面影响,所以业务上通常会以以下方式进行分拆。 分拆 单个key存储大value 每次都是整存整取 这种操作一般都是每次整存整取,这种情况可以尝试将对象拆分成多个key-value,使用multiGet获取值,这样分拆意义在于分拆操作的压力,将操作压力平摊到多个redis实例,降低对于单个redis的io压力。 每次只存取部分数据 同样可以拆成几个key-value,也可以将这些存储在一个hash中,每个field代表具体属性,使用hget,hmget来获取部分value,使用hset,hmset来更新部分属性。 hash,set,zset,list中存储过多数据 同样可以将这部分元素拆分,以hash为例,正常的流程是:hget(hashKey, field);hset(hashKey, field, value)。 现在可以固定一个桶数量,比如1w,每次存取的时候

对比Memcached和Redis,谁才是适合你的缓存?

孤街醉人 提交于 2020-07-28 11:23:56
Memcached vs Redis 近期公司采购软件,评估时,某软件谈到使用了 Memcached 和 Redis 缓存。在本文中,将研究这两个流行的缓存的异同,方便理解和记忆。 1. Memcached 与 Redis 通常,我们会考虑在处理大量数据时使用** 缓存 提高性能。** Memcached 是一个分布式内存缓存系统,设计简单易用,非常适合用作缓存或会话存储。 Redis 是一个内存中的数据结构存储,它提供了一系列丰富的特性。它作为缓存、数据库、消息代理和队列非常有用。 2. 安装 2.1. 安装 Memcached 下载最新版的 Memcached 包并执行make进行安装 : $ wget http://memcached.org/latest $ tar -zxvf memcached-1.6.3.tar.gz $ cd memcached-1.6.3 $ ./configure && make && make test && sudo make install 2.2. 安装 Redis 相似的, 安装最新版本的 Redis server : $ wget http://download.redis.io/releases/redis-5.0.8.tar.gz $ tar xzf redis-5.0.8.tar.gz $ cd redis-5.0.8 $

Redis 集群演进探讨和总结

坚强是说给别人听的谎言 提交于 2020-07-28 08:47:24
Redis为什么需要集群? 首先Redis单实例主要有单点,容量有限,流量压力上限的问题。 Redis单点故障,可以通过主从复制 replication ,和自动故障转移 sentinel 哨兵机制。 但Redis单 Master 实例提供读写服务,仍然有容量和压力问题,因此需要数据分区,构建多个 Master 实例同时提供读写服务(不仅限于从 replica 节点提供读服务)。 那么就需要一定的机制保证数据分区。这样能充分把容量分摊到多台计算机,或能充分利用多核计算机的性能。 并且数据在各个主Master节点间不能混乱,当然最好还能支持在线数据热迁移的特性。 探讨数据分区方案 针对数据分区,一般来说,分为两个大类: 逻辑拆分: 逻辑上能拆分,比如 Redis 中的 M1 节点 存储 A服务需要的业务数据,而 Redis 中的 M2 节点存储 B服务需要的业务数据。 数据分区: 当逻辑上不能拆分,那么只能按数据来拆分,需要保证客户端读和写数据一致。 因此需要一个高效快速的数据结构来路由对应的 Master 节点。 最容易想到的就是类比 Java 中的 HashMap , 采用 哈希算法,快速找到,快速设置。 这里有四种方式,分别是固定取模,随机,哈希一致性,哈希槽。 固定取模 假设有三个 Master,配置IP 和权重如下: Real Server IP weight 10.0.2

redis常用命令大全

回眸只為那壹抹淺笑 提交于 2020-07-28 08:27:52
1.基于内存的key-value数据库 2.基于c语言编写的,可以支持多种语言的api //set每秒11万次,取get 81000次 3.支持数据持久化 4.value可以是string,hash, list, set, sorted set 使用场景 1. 去最新n个数据的操作 2. 排行榜,取top n个数据 //最佳人气前10条 3. 精确的设置过期时间 4. 计数器 5. 实时系统, 反垃圾系统 6. pub, sub发布订阅构建实时消息系统 7. 构建消息队列 8. 缓存 cmd访问redis redis-cli.exe -h 127.0.0.1 -p 6379 key keys * 获取所有的key select 0 选择第一个库 move myString 1 将当前的数据库key移动到某个数据库,目标库有,则不能移动 flush db 清除指定库 randomkey 随机key type key 类型 set key1 value1 设置key get key1 获取key mset key1 value1 key2 value2 key3 value3 mget key1 key2 key3 del key1 删除key exists key 判断是否存在key expire key 10 10过期 pexpire key 1000 毫秒 persist key

【赵强老师】Redis案例分析:用setbit统计活跃用户

别等时光非礼了梦想. 提交于 2020-07-28 02:54:21
一、需求背景 首先,我们来看一下需求:网站统计用户登录的次数,具体如下: 网站有1亿个用户,有经常登录的,也有不经常登录的 如何来记录用户的登录信息 如何查询活跃用户:比如:一周内,登录3次的 二、使用传统的关系型数据库 我们使用传统的关系型数据库(比如:Oracle)来存储这样的数据,如下图所示。 每周产生7亿条数据,对于任何一个关系型数据库来说,都是非常不好维护的,对性能也会有很大的影响。 三、使用Redis的setbit操作 Redis支持对String类型的value进行基于二进制位的置位操作。通过将一个用户的id对应value上的一位,通过对活跃用户对应的位进行置位,就能够用一个value记录所有活跃用户的信息。如下图所未,下图中的bitmap有9个位被置为1,表示这9个位上对应的用户是今天的活跃用户。其中第15位表示uid为15的用户,第一位表示uid为0的用户。(如果你的uid不是从1开始的,比如从100000开始,实际上你也可以相应的用uid减去初始值来表示其位数,比如1000000用户对应到bitmap的第一位) 具体的代码类似下面这样: redis.setbit(key, user_id, 1) 这样一次记录的复杂度是O(1),在Redis中速度非常快。 下面代码是在Redis CLI中执行的Demo演示,比如:用户ID为100的用户在星期一登录了网站