redis(三)】的更多相关文章

Redis三主三从集群规划 10.0.128.19   使用端口 7000  7001 10.0.128.22   使用端口 7002  7003 10.0.128.23   使用端口 7004  7005 安装redis及依赖包 (3台) 下载安装包 https://redis.io/ tar xf  下载的源码包 解压到/data/redis-5.0.5 yum -y install tcl gcc cd /data/redis- make MALLOC=libc cd src make t…
一 简介 安装使用centos 5.10 Master 192.168.235.135 Slave 192.168.235.152 Vip 192.168.235.200 编译环境 yum -y install gcc gcc+ gcc-c++ openssl openssl-devel pcre pcre-devel 当 Master 与 Slave 均运作正常时, Master负责服务,Slave负责Standby: 当 Master 挂掉,Slave 正常时, Slave接管服务,同时关闭…
1.哈希类型键值结构 哈希类型也是key-value结构,key是字符串类型,其value分为两个部分:field和value 其中field部分代表属性,value代表属性对应的值 上面的图里,user:1:info为key,name,age,Date为user这个key的一些属性,value是属性对应的值 在hash中,可以为key添加一个新的属性和新的值 比如使用下面的命令向user:1:info这个key添加一个新属性viewCounter,属性对应的值为100 hset user:1:…
这里说的三种工作模式是指: 1.单机模式 2.分片模式 3.集群模式(since 3.0) 说明图详见以下: 使用单机模式连接: private String addr="192.168.1.1"; private String port="6236"; private String key="key"; private Jedis jedis=new Jedis(addr,port);//Jedis获取到的Redis数据在jedis里,jedi…
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址:http://redis.io/download github下载地址:https://github.com/MSOpenTech/redis/tags 二.安装Redis 1.这里下载的是Redis-x64-3.2.100版本,我的电脑是win7 64位,所以下载64位版本的,在运行中输入cmd…
一.Redis数据常用操作 1.string常用操作 set key1  aminglinux get key1 set key1  aming //一个key对应一个value,多次赋值,会覆盖前面的value setnx key2 aaa   //返回1 get key2 setnx key2 bbb  //返回0 说明:setnx 如果key存在,则返回0,不存在会直接创建这个key setex key3  10  1 //这个是用来给key设定过期时间的 mset  key1 1  ke…
cas全称是compare and set,是一种典型的事务操作. 简单的说,事务就是为了存取数据库中同一数据时不破坏操作的隔离性和原子性,从而保证数据的一致性. 一般数据库,比如MySql是如何保证数据一致性的呢,主要是加锁,悲观锁.比如在访问数据库某条数据的时候,会用SELECT FOR UPDATE ,这MySql就会对这条数据进行加锁,直到事务被提交(COMMIT),或者回滚(ROLLBACK).如果此时,有其他事务对被加锁的数据进行写入,那么该事务将会被阻塞,直到第一个事务完成为止.它…
主从环境 centos7.6 redis4.0.1 主 从 192.168.181.139:6379 192.168.181.136:6379 192.168.181.136:6380 192.168.181.137:6380 192.168.181.137:6381 192.168.181.139:6381 集群实例配置 这里展示192.168.181.139:6379节点的,其他配置修改ip.端口号和文件名 bind 192.168.181.139 port 6379 pidfile /va…
目录 介绍 为什么要使用Redis? 什么是Redis群集? 在Kubernetes中部署Redis集群 从 GitHub 上下载: 创建pv 创建statefulset 创建service 初始化 Redis Cluster 验证集群部署 测试Redis集群 介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序集合. 由于Redis接受多种格式的密钥,因此可以在服…
模式类型 主从模式(redis2.8版本之前的模式).哨兵sentinel模式(redis2.8及之后的模式).redis cluster模式(redis3.0版本之后) 主从模式原理 同Mysql主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况.为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步.下图为级联结构. 优点: 1.解决数据备份问题 2.做到读写分…
主从复制 主数据库可以进行读写操作,当读写操作导致数据变化时会自动将数据同步给从数据库 从数据库一般都是只读的,并且接收主数据库同步过来的数据 一个master可以拥有多个slave,但是一个slave只能对应一个master 哨兵模式 监控主从数据库是否正常运行 master出现故障时,自动将slave转化为master 多哨兵配置的时候,哨兵之间也会自动监控 多个哨兵可以监控同一个redis 集群模式 两台虚拟机CentOS搭建3 master.3 salve 环境. (1)下载并解压 cd…
一.资源准备 1.准备三台服务器H1.H2.H3 172.26.237.83 H1 172.26.237.84 H2 172.26.237.85 H3 二.配置服务器 1.在H1服务器设置SSH免密登录:在H1生成RSA公钥和私钥(在H1操作) (1)执行ssh-keygen -t rsa命令(2)进入生成密钥所在的文件目录cd /root/.ssh/(3)将公钥(名为id_rsa.pub文件)追加到认证文件(名为authorized_keys文件),先后执行以下指令: ssh-copy-id…
一.前言 Redis 提供了5种数据类型:String(字符串).Hash(哈希).List(列表).Set(集合).Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要. Redis 中的 list 是我们经常使用到的一种数据类型,根据使用方式的不同,可以应用到很多场景中. 二.操作命令  List数据类型在 Redis 中的相关命令:: 命令 描述 用法 LPUSH 1.将一个或多个值value插入到列表key的表头2.如果有多个value值,那么各个value值按…
三种集群模式 redis有三种集群模式,其中主从是最常见的模式. Sentinel 哨兵模式是为了弥补主从复制集群中主机宕机后,主备切换的复杂性而演变出来的.哨兵顾名思义,就是用来监控的,主要作用就是监控主从集群,自动切换主备,完成集群故障转移. cluster 模式是redis官方提供的集群模式,使用了Sharding 技术,不仅实现了高可用.读写分离.也实现了真正的分布式存储. 一.主从复制 redis主从复制 1.reids主从模式 2.redis复制原理 redis 的复制分为两部分操作…
一.Geospatail地理位置 1.Geospatail的应用 朋友的位置,附近的人,打车距离 2.相关命令 1.geoadd:增加某个地理位置的坐标(可批量添加). 语法: GEOADD key longitude latitude member [longitude latitude member ...] 127.0.0.1:6379> geoadd china:city 116.405285 39.904989 beijing (integer) 1 127.0.0.1:6379>…
Redis的全称是REmote Dictionary Server,它主要提供了5种数据结构:字符串.哈希.列表.集合.有序集合,同时在字符串的基础之上演变 出了位图(Bitmaps)和HyperLogLog两种神奇的"数据结构",并且随着 LBS(Location Based Service,基于位置服务)的不断发展,Redis3.2版本中 加入有关GEO(地理信息定位)的功能 哈希 几乎所有的编程语言都提供了哈希(hash)类型,它们的叫法可能是哈 希.字典.关联数组.在Redis…
一.Redis主从复制作用 数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式. 故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复:实际上是一种服务的冗余. 负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务 (即写 Redis 数据时应用连接主节点,读 Redis 数据时应用连接从节点),分担服务器负载:尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量. 高可用基石:除了上述作用…
总体原则:key的名称不易过长,剩下的所有 能用纯数字表示的尽量用 Redis的每一个键值都是用一个redisObject结构体表示的结构体中有:    键值的类型(string/list/hash/set/zset)    内部编码方式(下面重点讲)    该键值被多少次引用    内容指针 若内容指针指的是字符串,则内容指针指向sdshdr的结构体    (该结构体中 字符串长度.buf中剩余空间.buf字符数组[存字符串])存储键值空间 = redisObject大小 + sdshfr大小…
Redis的哈希值是字符串字段和字符串值之间的映射,所以他们是表示对象的完美数据类型 在Redis中的哈希值,可存储超过400十亿键值对. redis 提供了2套操纵 一种是批量 一种是非批量 假设需要存储一个用户信息 批量操作 定义一个key为user1的hash 包含属性 name=xstao.age=22.sex=1.password=123 并获取user1中name的属性值 redis 127.0.0.1:6379[1]> hmset user1 name xstao age 22 s…
下载 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 解压 tar -xzf redis-4.0.9.tar.gz -C /usr/local #直接make 编译 cd redis-4.0.9 make 也可使用root用户执行`make install`,将可执行文件拷贝到/usr/local/bin目录下.这样就可以直接敲名字运行程序了.make install 最简启动: cd redis; 加上`&`号使redis以后…
Hash类型操作 Hash类型操作 Redis在内存中存储hash类型是以name对应一个字典形式存储的 hset(name,key,value) #name对应的hash中设置一个键值对(不存在,则创建:否则,修改) #参数: #name:redis的name #key:key1对应的hash中的key #value:value1对应的hash中的value #注:hsetx(name,key,value),当name对应的hash中不存在当前key则创建(相当于添加) hget(name,k…
1.  先把redis的连接池拿出来, JedisPool pool=new JedisPool(new JedisPoolConfig(),"127.0.0.1") Jedis jedis=pool.getResource(); 2. 设值: jedis.set("key1","value1"); 取值: jedis.get("key1"); 删除: jedis.del("key1"); 给一个key叠加…
Part I. 直接启动下载 官网下载:http://redis.io/download安装 tar zxvf redis-2.8.9.tar.gzcd redis-2.8.9#直接make 编译make#可使用root用户执行`make install`,将可执行文件拷贝到/usr/local/bin目录下.这样就可以直接敲名字运行程序了.make install 启动 #加上`&`号使redis以后台程序方式运行./redis-server & 检测 #检测后台进程是否存在ps -ef…
1.服务器部署好redis后 在项目里边添加 StackExchange.Redis.dll (可以去nuget下载) 2.添加SERedisHelper.cs  里边有  对应的缓存的相关方法 using Newtonsoft.Json; using StackExchange.Redis; using System; using System.Collections.Generic; using System.Configuration; using System.Linq; using S…
角色          ip       port master      127.0.0.1  6379  slave-1     127.0.0.1  6380  slave-2     127.0.0.1  6381  sentinel-1  127.0.0.1  26379  sentinel-2  127.0.0.1  26380  sentinel-3  127.0.0.1  26381 /etc/redis_6379.conf 文件配置 port 6379 daemonize ye…
安装 tar zxvf redis-2.8.9.tar.gz cd redis-2.8.9 #直接make 编译 make #可使用root用户执行`make install`,将可执行文件拷贝到/usr/local/bin目录下.这样就可以直接敲名字运行程序了. make install 启动 #加上`&`号使redis以后台程序方式运行 ./redis-server & 检测 #检测后台进程是否存在 ps -ef |grep redis #检测6379端口是否在监听 netstat -…
List操作 redis中的List在在内存中按照一个name对应一个List来存储.如图: lpush(name,values) 1 2 3 4 5 6 7 8 # 在name对应的list中添加元素,每个新的元素都添加到列表的最左边   # 如:     # r.lpush('oo', 11,22,33)     # 保存顺序为: 33,22,11   # 扩展:     # rpush(name, values) 表示从右向左操作 lpushx(name,value) 1 2 3 4 #…
<?php header('content-type:text/html;charset=utf-8');                 // //无控制     // $DB_DSN = 'mysql:dbname=blog;host=127.0.0.1';     // $DB_USER = 'root';     // $DB_PWD = 'root';           // $pdo = new PDO($DB_DSN, $DB_USER, $DB_PWD);     // $pd…
Ubuntu 下安装 在 Ubuntu 系统安装 Redi 可以使用以下命令: $sudo apt-get update $sudo apt-get install redis-server 启动 Redis $ redis-server 查看 redis 是否启动? $ redis-cli 以上命令将打开以下终端: redis 127.0.0.1:6379> 127.0.0.1 是本机 IP ,6379 是 redis 服务端口.现在我们输入 PING 命令. redis 127.0.0.1:…
1 悲观锁乐观锁简介 乐观锁( Optimistic Locking ) 相对悲观锁而言,乐观锁假设认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突了,则让返回用户错误的信息,让用户决定如何去做. 悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态.(百科) 最形象的悲观锁 vs 乐观锁 2.悲观锁乐观锁使用场景 两种锁各有优缺点,…