文章目录

  • 一、分布式架构
  • 1. 特点
  • 2. 优势
  • 3. 缺点
  • 4. 设计原则
  • 二、redis
  • 1. 图解
  • 2. 什么是nosql
  • 3. 什么是分布式缓存?
  • 4. 什么是redis
  • 5. redis安装
  • 6. redis-cli的使用
  • 7. redis数据类型
  • 1. string
  • 2.hash
  • 3. list
  • 4. set
  • 5. zset(有序的set)


一、分布式架构

1. 特点
  1. 不用的业务分散在不同的服务器
  2. 每个子系统负责一个或多个不同的业务模块
  3. 服务之间可以相互 通信(RPC、webservice、http)
  4. 分布式系统对用户透明
  5. 每个分布式的系统可以整个集群
  6. 微服务是分布式发的一个子集
2. 优势

Redis分布式数据存储 redis的分布式_Redis分布式数据存储

3. 缺点

Redis分布式数据存储 redis的分布式_分布式缓存_02


Redis分布式数据存储 redis的分布式_redis_03

4. 设计原则
  1. 异步解耦
  2. 幂等一致性
  3. 拆分原则
  4. 融合分布式中间件
  5. 容错高可用

二、redis

1. 图解

Redis分布式数据存储 redis的分布式_redis_04

2. 什么是nosql

全称是 not only sql

Redis分布式数据存储 redis的分布式_redis_05


Redis分布式数据存储 redis的分布式_redis_06

3. 什么是分布式缓存?

Redis分布式数据存储 redis的分布式_分布式缓存_07


Redis分布式数据存储 redis的分布式_分布式架构_08

4. 什么是redis

Redis分布式数据存储 redis的分布式_redis_09


Redis分布式数据存储 redis的分布式_分布式架构_10


Redis分布式数据存储 redis的分布式_分布式架构_11


Redis分布式数据存储 redis的分布式_Redis分布式数据存储_12

5. redis安装
  1. 解压
  2. 安装gcc-c++

yum install gcc-c++

  1. 编译

make

  1. 安装

make install

  1. 把untils下的redis_init_script拷贝到/etc/init.d中
  2. Redis分布式数据存储 redis的分布式_Redis分布式数据存储_13

  3. 创建目录
  4. Redis分布式数据存储 redis的分布式_分布式架构_14

  5. 拷贝redis.conf到目录
  6. Redis分布式数据存储 redis的分布式_redis_15

  7. 修改配置文件
  • 后台运行
  • Redis分布式数据存储 redis的分布式_redis_16

  • 设置工作空间
  • Redis分布式数据存储 redis的分布式_redis_17

  • 可以被远程访问到
  • Redis分布式数据存储 redis的分布式_redis_18

  • 设置密码
  • Redis分布式数据存储 redis的分布式_分布式架构_19

  • 修改 init 中的文件
  • Redis分布式数据存储 redis的分布式_Redis分布式数据存储_20

  • 加权限
  • Redis分布式数据存储 redis的分布式_分布式缓存_21

  • 运行
  • Redis分布式数据存储 redis的分布式_Redis分布式数据存储_22

  • 查看启动是否成功
    ps -ef|grep redis
6. redis-cli的使用

Redis分布式数据存储 redis的分布式_redis_23

7. redis数据类型
1. string

Redis分布式数据存储 redis的分布式_分布式缓存_24

  • ttl key

查看过期时间

  • expire key 30

设置过期时间为30s(有s)

  • set key value ex 20

设置过期时间为20s(没有s)

  • append key 123

给key后面拼接一个123

  • incr age

累加

  • decr age

累减

  • incrby age 10

累加10

  • decr age 10

累减10

  • getrange name 0 2

截取

  • mget mset

统一获取设置键值对

Redis分布式数据存储 redis的分布式_Redis分布式数据存储_25

redis默认有16个库,如果要切换,可以使用select 数字切换,切换之后,其他库的数据看不到

  • flushdb

清库

2.hash

可以保存对象

  • hset hget

hset user name 小黑
hget user name

  • hmset hmget

可以设置多个,获取多个

Redis分布式数据存储 redis的分布式_分布式架构_26

  • hlen user
  • hkeys user
  • hvals user
  • hincrby user age 3
  • hincrbyfloat user age 3
3. list

Redis分布式数据存储 redis的分布式_Redis分布式数据存储_27

  • lpush rpush lpop rpop
  • llen list
  • lindex list2 1

从list2里取第二个

  • lset list1 1 786

把list1中下标为1的改为786

  • lrange list1 0 -1
  • linsert
  • Redis分布式数据存储 redis的分布式_redis_28

  • lrem 删除
  • Redis分布式数据存储 redis的分布式_Redis分布式数据存储_29

  • ltrim 截取
  • Redis分布式数据存储 redis的分布式_Redis分布式数据存储_30

4. set
  • sadd set 1 2 3 1

添加数据

  • smembers set

查看

  • simember set pig

查看pig在不在里面

  • srem set duck

移除

  • spop set 2
  • 移除2个

  • 把set1中的10移动到set2(set1的10没有了,set2中有了)
  • Redis分布式数据存储 redis的分布式_redis_31

  • set还可以做交集、并集、差集等
5. zset(有序的set)

Redis分布式数据存储 redis的分布式_分布式缓存_32