写在前面

说到数据库,可能第一个想到 mysql,其实除了关系型数据库,常见的还有非关系型数
据库,例如今天要说的 redis,由于系统对性能要求的提高,开发对 redis 的使用的
逐渐增多,所以了解非关系型数据库在日常测试中非常重要。

概念

简单而言非关系型数据库就是没有遵循关系代数模式的数据库,也常被人称为
nosql。最最常用的就是 redis。

redis 数据类型

redis 数据类型有五种,包括:1.string 2.hash 3.list 4.set 5.zset

各类型之间的区别
string
    类似Java中的map ,key valuses 结构
    读 get key
    增 set key value
    删 del
hash
    一个 key 对应一个 value
    读hget key
    写 hset key value
    删 hdel
list
    简单的字符串列表,按照插入顺序排序
    读 lrange mylist 0 1
    写
        插入头部 lpush mylist "0"
        插入尾部 rpush mylist "0"
    删 lpop 
set
    字符串类型的无序集合
     读 smembers myset
    写 sadd myset "one"
    删 srem
zset
    与set 相同点: 字符串类型元素的集合,并且集合内的元素不能重复。
    zset 每个元素都会关联一个 double 类型的分数,redis 通过分数来为集合中的成员进行从小到大的排序。
    写  zadd 
    读  zrange
    删 zrem

reids 和 mysql 区别

了解了 redis 的基本数据类型和基本用法后,我们来说一下 reids 和 mysql
区别,mysql 是关系型数据库,redis 是缓存数据库,redis 一个运行在内存中,
速度快,key values 数据结构不多,mysql 一个是基于磁盘的关系型数据库,适宜复杂数据结构

缓存的使用场景

1.不需要实时更新但是又极其消耗数据库的数据。
2.需要实时更新,但是更新频率不高的数据。
3.在某个时刻访问量极大而且更新也很频繁的数据。但是这种数据使用的缓存
不能和普通缓存一样,这种缓存必须保证不丢失,否则会有大问题。

缓存的优势

高并发
分布式缓存服务 Redis 提供超过 10 万的高 QPS,轻松应对高并发访问
灵活扩展
业务爆发时可以通过一键扩容,满足秒杀场景下的访问量增长
数据持久化
自动将数据持久化到磁盘,保障数据安全可靠

写在最后

我是小巴哥,一个陪你成长,实实在在分享 测试干货职场经验的人,欢迎关注!!!


↙↙↙阅读原文可查看相关链接,并与作者交流