Windows命令行启动Redis客户端 1. 使用默认IP地址和端口连接Redis数据库(IP地址:127.0.0.1,端口号6379) redis-cli 2. 使用指定IP地址和端口连接Redis数据库 redis-cli -h 192.168.2.144 -p 6379 查询所有键值 keys * 读写String类型的Value set name ‘ljx’//写String类型 get name//读String类型 读写List类型的Value rpush friends 'lyt…
redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历以he开头,第三个字符为h-l之间的所有key keys ph? ?代表一个字符 keys he* 匹配所有以 he 开头的 key dbsize 计算 key 的总数 注意:keys命令一般不在生产环境中使用 生产环境的key比较多,keys这个命令是一个O(n)的命令 由于Redis是单线程的,…
一.安装JDK tar -zxvf jdk-7u67-linux-i586.tar.gz vi /etc/profile 重启一次Centos 编码验证 二.安装eclipse 三.Jedis所需要的jar包 Commons-pool-1.6.jar Jedis-2.1.0.jar 四.Jedis常用操作 1.测试连通性 public class Demo01 { public static void main(String[] args) { //连接本地的 Redis 服务 Jedis je…
申明 本文章首发自本人公众号:壹枝花算不算浪漫,如若转载请标明来源! 感兴趣的小伙伴可关注个人公众号:壹枝花算不算浪漫 22.jpg 前言 前面已经学习了Redis的持久化方式,接下来开始学习Redis主从架构的原理,来看看Redis如何利用主从架构来保证高并发的. Redis如何支持高并发 单机的redis一般QPS不会超过超过10万+,一般单机QPS都在几万左右,如果需要支撑高并发,我们可以将Redis做成主从架构来支持读写分离. 主从架构 -> 读写分离 -> 支撑10万+读QPS 主从…
1.Redis是什么 1)REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. 2)Redis的特点 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用. Redis不仅仅支持简单的key-value类型的…
1. Redis事务 Redis中的事务(transaction)是一组命令的集合,一个事务中的命令要么都执行,要么都不执行.事务的原理是先将属于一个事务的命令发送给Redis,然后再让Redis依次执行这些命令. > multi OK > sadd user::following QUEUED > sadd user::followers QUEUED > EXEC ) (integer) ) (integer) multi命令告诉redis,发送的sadd命令属于同一个事务,先…
1. Redis的特性 (1) 存储结构 Redis(Remote Dictionary Server,远程字典服务器)是以字典结构存储数据,并允许其他应用通过TCP协议读写字典中的内容.Redis支持的数据类型有字符串类型,散列类型,列表类型,集合类型,有序集合类型. 常见的MySQL等存储结构可能会使用额外的表来连接两个表,查询时需将该额外的表进行连接,并不直观.而Redis可以将程序中的数据直接映射到Redis中,数据在Redis中 的存储形式和其在程序中存储方式很相似.Redis的另一优…
一.Redis脚本简介 在我们介绍Redis的配置文件之前,我们先来说一下Redis安装完成后生成的几个可执行文件: redis-server .redis-cli .redis-benchmark .redis-stat .redis-check-dump.redis-check-aof : redis-server:Redis 服务器的daemon启动程序. redis-cli:Redis 命令行执行工具.当然,你也可以用telnet根据其纯文本协议来操作. redis-benchmark:…
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 redis-2.8.18 什么是持久化? 将数据从掉电易失的内存存放到能够永久存储的设备上 Redis持久化方式: RDB(Redis DB) 类似 hdfs:fsimage 快照 AOF(AppendOnlyFile) 类似 hdfs :edit logs 关闭的 一.RDB在默认情况下,Redis 将数据库快照保存在名字为dump.rdb的二进制文件中…
redis.conf是redis的配置文件,在解压后的redis安装文件夹下 单位 1  配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit    2  对大小写不敏感 包含 和我们的Struts2配置文件类似,可以通过includes包含,redis.conf可以作为总闸,包含其他 通用 通用下包含这些配置 设置后台运行 进程id存放位置 运行端口 tcp-backlog 监听的连接来源 多久后连接断开 检测redis是否存活,在集群中检测其它的redis服务 日志级别…
一.入门概述 1.是什么 Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器. Redis 与其他 key - value 缓存产品(memcached)有以下三个特点: 1)持久化:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再…
redis简介 Redis是一个开源的,高性能的,基于键值对的缓存与存储系统,通过设置各种键值数据类型来适应不同场景下的缓存与存储需求.同事redis的诸多高层级功能使其可以胜任消息队列,任务队列等不同角色. 存储结构 Redis是REmote Dictionary Server(远程字典服务器)的缩写,它以字典结构存储数据,并允许其他应用通过TCP协议读写字典中的内容,目前为止redis支持的键值数据类型如下:字符串类型,散列类型,列表类型,集合类型,和有序集合类型.其中一个字符串类型键值允许…
Redis Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化. 与其它键值数据存储相比,Redis有一组相对丰富的数据类型. Redis可以将数据复制到任意数量的从机中 Redis的安装 官网只提供了linux的安装包,我win10 的系统,在github上下载的windows安装包 3.0.504最新稳定版的 github地址:https://github.com/MicrosoftArchive/redis/releases   官网下载地址:https://redis.io/do…
原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的源码.目前目标是吃透 redis 的数据结构.我们都知道,在 redis 中一共有5种数据结构,那每种数据结构的使用场景都是什么呢? String——字符串 Hash——字典 List——列表 Set——集合 Sorted Set——有序集合 下面我们就来简单说明一下它们各自的使用场景: 0x00 String——字符串 String 数据结构是简单的 key-value 类型,value…
0x00 Redis简介 Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes).列表(lists).集合(sets)和 有序集合(sorted sets)等数据类型. 对于这些数据类型,你可以执行原子操作.例如:对字符串进行附加操作(append):递增哈希中的值:向列表中增加元素:计算集合的交集.并集与差…
# redis安装 # redis安装教程 -- 服务器(ubuntu)安装redis服务 sudo apt-get install redis-server -- 源码安装 -- $ wget http://download.redis.io/releases/redis-4.0.6.tar.gz $ tar xzf redis-.tar.gz $ cd redis- $ make # 编译,需要先安装gcc $ make install # 安装成功之后,会自动将可执行文件(6个)拷贝到/e…
Redis主从复制 java架构师项目实战,高并发集群分布式,大数据高可用,视频教程 1.Master可以拥有多个slave 2.多个slave可以连接同一个Master外,还可以连接到其他的slave 3.主从复制不会阻塞Master在主从复制时,Master可以处理client请求. 4.提供系统的伸缩性. 主从复制的过程 1.slave与Master建立连接,发送sync同步命令. 也就是说当用户在Master写入一条命令后,他们之间会通过一些算法把数据同步到每一个slave上. 2.Ms…
redis集群 java架构师项目实战,高并发集群分布式,大数据高可用,视频教程 在redis3.0之前,出现了sentinel工具来监控各个Master的状态(可以看上一篇博客).如果Master异常则会做主从切换.选举一个slave作为新的Master,3.0之后出现了集群.集群的搭建至少需要3个Master 在这里我只在一台装有linux系统装3个Master和3个slave作为测试. linux主机的ip为192.168.1.229 第一步 1.下载redis安装包解压并安装到linux…
申明 本文章首发自本人公众号:壹枝花算不算浪漫,如若转载请标明来源! 感兴趣的小伙伴可关注个人公众号:壹枝花算不算浪漫 22.jpg 前言 Redis是基于内存来实现的NO SQL数据库,但是我么你都知道存储在内存中的数据,只要服务器关机,内存中的数据就会消失了. 为了避免内存中的数据丢失,Redis提供了对持久化的支持.Redis共有RDB和AOF两种持久化机制. 可以先看下两种持久化机制原理: 01_Redis中RDB和AOF.jpg RDB和AOF两种持久化机制的介绍 RDB持久化机制,对…
一.慢查询 因为 Redis 是单线程的,大量的慢查询可能会导致 redis-server 阻塞,可以通过 slowlog get n 获取慢日志,查看详情情况. 二.bigkey 大对象 bigkey 大对象可能会导致的问题包括: 内存空间不均匀(平衡),例如在 Redis Cluster 中,bigkey 会造成节点的内存空间使用不均匀. 超时阻塞:由于Redis 单线程的特性,操作 bigkey 比较耗时,也就意味着阻塞 Redis 的可能性增大. 网络阻塞:每次获取 bigkey 产生的…
Redis简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set --有序集合)和hash(哈希类型).这些数据类型都支持push/pop.add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是…
在之前我们讲到了主从,但是对于大数据量的场景下我们就需要用到集群了,让我们来了解下集群吧. 为什么需要集群 单机内存太小 redis最高可以达到10万/s 请求,如果超过该频率呢? 数据分布方式 数据分布方式有如下两种方式: 顺序分布 哈希分布 分布方式 特点 顺序分布 数据分散度易倾斜可顺序访问键值业务相关支持批量操作 哈希分布 数值分散度高无法顺序访问键值分布业务无关支持批量操作 哈希分布 节点取余分区 hash(key) % nodes 如果要增加分区,数据迁移量在80%左右,数据迁移第一…
在分布式系统架构设计中高可用是必须考虑的因素之一.高可用通常是指,通过设计减少系统不能提供服务的时间.而单点是系统高可用的最大的败笔,如果单点出现问题的话,那么整个服务就不能使用了,所以应该尽量在系统设计的过程中避免单点.对于 redis 服务也是这样,今天我们就来实现 Redis 的高可用的基础 --> 主从配置. 主从概念 有多台 Redis 服务器(至少两台或以上),其中一台是主服务器(master) 负责写指令的操作,其他都是从服务器(slave)负责读指令的操作. 主从服务器之间会进行…
Redis 概念 1.Redis 是什么 Redis 是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理. 2.Redis 能干什么 Redis 支持字符串.哈希表.列表.集合.有序集合,位图,hyperloglogs等数据类型.内置复制.Lua 脚本.LRU 收回.事务以及不同级别磁盘持久化功能,同时通过 Redis Sentinel 提供高可用,通过 Redis Cluster提供自动分区. 简单来说就是 Redis 比关系型数据库(如:MySql)读写…
#1 连接redis # 连接redis -- import redis -- 使用端口连接redis conn = redis.Redis(host=) -- 使用套接字连接 r = redis.Redis(unix_socket_path='/tmp/redis.sock') -- 使用连接池连接到redis >>> pool = redis.ConnectionPool(host=) >>> conn = redis.Redis(connection_pool=p…
集群版本: redis-4.0.14 集群节点: 节点角色 IP redis-master 10.100.8.21 redis-slave1 10.100.8.22 redis-slave2 10.100.8.23 redis-sentinel01 10.100.8.24 redis-sentinel02 10.100.8.25 redis-sentinel03 10.100.8.26 主从部署 全部节点执行: useradd -M -s /sbin/nologin redis; mkdir /…
我们来试试进行数据的存储 127.0.0.1:7000> set name marklogzhu OK 127.0.0.1:7000> get name "marklogzhu" 127.0.0.1:7000> set name1 java (error) MOVED 12933 127.0.0.1:7002 当我们设置 name1 java 竟然报错了,这是什么情况? moved 重定向 这是因为 Redis 集群会计算存储的 key 对应的槽和节点,如果对应的节点…
上节学习了cluster的搭建及redis-cli终端下如何操作,但是更常用的场景是在程序代码里对cluster读写,这需要redis-client对cluster模式的支持,目前spring-data-redis(1.6.4)还不支持cluster,最新的1.7.0 RC1已经有cluster的相关实现了,不过目前尚未正式发布,所以现阶段要使用redis-cluster的话,client最好还是选用原生的jedis,示例代码如下: 配置文件: <?xml version="1.0&quo…
在redis安装文章中,说到安装好redis后,在/usr/local/bin下有5个关于redis的可执行程序.下面关于这5个可执行程序命令的详细说明. redis-server Redis服务器的daemon启动程序   #启动并加装指定配置文件 redis-server redis.conf #查redis服务版本号 redis-server –version # 以标准输入作为配置启动redis,其中key为配置参数,value为配置参数值 redis-server --port 600…
0. 前言: 这篇文章旨在对redis环境的搭建以及对redis有个大概的认识. 一.redis搭建: 环境:ubuntu 14 软件包:redis-3.0.3.tar.gz 安装步骤: 1. 首先解压redis源码包 2. 进入目录redis-3.0.3,使用make编译源码 3. 编译完成无错后使用sudo make install安装 如下图所示: 二.redis基本命令使用 首先使用redis-server & 后台启动redis,默认端口为6379 1. redis所支持的数据结构类型…