Redis使用及优化入门

Redis的优势

  • MySQL读写慢,Redis内存数据库,读写速度快。
  • 少量的数据要经常读写,尤其是读操作,读写速度要求高。
  • 丰富的数据结构,Redis支持5种数据结构,MySQL字段变化,需要手动维护,比较繁琐。
  • 数据持久化,数据全部放在内存,不安全。
  • Redis操作是原子性的,支持对几个操作合并后的原子操作,还支持事务。

Redis数据结构

1. string

Key=>Value(string)

Redis是二进制安全,可以接收任何二进制数据,例如JPEG图片或者JSON字符串,数据长度512M

key Value

 Tom 98
Red 94
Jack 80

应用场景:电商网站商品分类

细节:访问频率高,数据不经常变动,放在Redis

Key Value

     "category" {"常用分类":A,"潮流女装":B,..}

具体流程

1、网络是否可用

2、通过API获取服务器中的Redis缓存

3、本地是否有缓存数据,有的话到5,没有到6

4、APP展示返回数据并在本地缓存

5、用本地缓存展示数据

6、显示网络不可用

hash 存储对象的数据

Key是唯一的,Value是一个hashmap结构

学号,对应一个学生的全部信息

string

key:学号 value:信息的JSON串
弊端:改信息需要遍历,增加了没必要的性能开销和复杂性
key:学号+字段(姓名,年龄等等) value:字段对应的值
弊端:大量的key-value,内存开销大
hash
hgetAll id

list 模拟队列操作

插入元素key不存在,创建新的链表,如果keu存在的话,往里面加value,如果链表中元素都移除,key从Redis移除
直接从头部到尾部或者从尾部插入,效率高,双向队列,从链表中遍历到指定位置,效率低。
轻量级消息队列
短信发送应用
set无序不重复集合

支持集合交集 并集 差集运算

上一篇:20169211《linux内核原理与分析》第七周作业


下一篇:What Is Your Grade?(水,排序)