Redis常见操作及主从、集群搭建

Redis

数据操作

string

  • 设置键值
    set key value
  • 设置键值及过期时间,以秒为单位
    setex key seconds value
  • 设置多个键值
    mset key1 value1 key2 value2 …
  • 追加值
    append key value
  • 获取:根据键获取值,如果不存在此键则返回nil
    get key
  • 根据多个键获取多个值
    mget key1 key2 …

键操作

  • 查找键,参数⽀持正则表达式
    keys pattern
  • 判断键是否存在,如果存在返回1,不存在返回0
    exists key1
  • 查看键对应的value的类型
    type key
  • 删除键及对应的值
    del key1 key2 …
  • 设置过期时间,以秒为单位
    如果没有指定过期时间则⼀直存在,直到使⽤DEL移除
    expire key seconds
  • 查看有效时间,以秒为单位
    ttl key

hash

  • 增加,修改

    • 设置单个属性
      hset key field value
    • 设置多个属性
      hmset key field1 value1 field2 value2 …
  • 获取

    • 获取指定键所有的属性
      hkeys key
    • 获取⼀个属性的值
      hget key field
    • 获取多个属性的值
      hmget key field1 field2 …
    • 获取所有属性的值
      hvals key
  • 删除

    • 删除整个hash键及值,使⽤del命令
      删除属性,属性对应的值会被⼀起删除
      hdel key field1 field2 …

list

  • 增加

    • 在左侧插⼊数据
      lpush key value1 value2 …
    • 在右侧插⼊数据
      rpush key value1 value2 …
    • 在指定元素的前或后插⼊新元素
      linsert key before或after 现有元素 新元素
  • 获取

    • 返回列表⾥指定范围内的元素

start、stop为元素的下标索引
索引从左侧开始,第⼀个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素
lrange key start stop

  • 删除

    • 删除指定元素

将列表中前count次出现的值为value的元素移除
count > 0: 从头往尾移除
count < 0: 从尾往头移除
count = 0: 移除所有
lrem key count value

  • 设置索引位置的元素值

    • 设置指定索引位置的元素值
      索引从左侧开始,第⼀个元素为0
      索引可以是负数,表示尾部开始计数,如-1表示最后⼀个元素

lset key index value

set

  • ⽆序集合
    元素为string类型
    元素具有唯⼀性,不重复
    说明:对于集合没有修改操作

  • 增加

    • 添加元素
      sadd key member1 member2 …
  • 获取

    • 获取
      返回所有的元素
      smembers key
  • 删除

    • 删除
      删除指定元素
      srem key

zset

  • sorted set,有序集合
    元素为string类型
    元素具有唯⼀性,不重复
    每个元素都会关联⼀个double类型的score,表示权重,通过权重将元素从⼩到⼤排序
    说明:没有修改操作

  • 增加

    • 添加
      zadd key score1 member1 score2 member2 …
  • 获取

    • 返回指定范围内的元素
      start、stop为元素的下标索引
      索引从左侧开始,第⼀个元素为0
      索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素
      zrange key start stop
    • 返回score值在min和max之间的成员
      zrangebyscore key min max
    • 返回成员member的score值
      zscore key member
  • 删除

    • 删除指定元素
      zrem key member1 member2 …
    • 删除权重在指定范围的元素
      zremrangebyscore key min max

总结

  • string

set
setex
mset
append
get
mget
**

  • key

**
keys
exists
type
delete
expire
getrange
ttl

  • hash

hset
hmset
hkeys
hget
hmget
hvals
hdel

  • list

lpush
rpush
linsert
lrange
lset
lrem
**

  • set

**
sadd
smembers
srem

  • zset

zadd
zrange
zrangebyscore
zscore
zrem
zremrangebyscore

搭建主从

主从概念

⼀个master可以拥有多个slave,⼀个slave⼜可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构
master用来写数据,slave用来读数据,经统计:网站的读写比率是10:1
通过主从配置可以实现读写分离

搭建集群

为什么要搭建集群:一主可以多从,如果同时的访问量过大(1000w),主服务肯定就会挂掉,数据服务就挂掉了或者发生自然灾难

大公司都会有很多的服务器(华东地区、华南地区、华中地区、华北地区、西北地区、西南地区、东北地区、台港澳地区机房)

集群的概念

集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放。当请求到来首先由负载均衡服务器处理,把请求转发到另外的一台服务器上。

Redis集群

  • 软件层面:只有一台电脑,在这一台电脑上启动了多个redis服务。
  • 硬件层面:存在多台实体的电脑,每台电脑上都启动了一个redis或者多个redis服务。

XMind: ZEN - Trial Version

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值