初始redis

官方文档地址

官方文档.

redis理解

1.redis 是非关系型数据库(noSql) 具有非结构化、无关联性、不是sql的语法等特性。
2.redis 是远程词典服务器是一个基于内存的键值型NoSQL数据库。

redis特点

1.redis 是键值型(key -value)型,value支持多种不同的数据结构,功能丰富。
2. 单线程,每一个命令具有原子性
3. 低延迟。速度快(基于内存、IO多路复用、良好的编码)。
4. 支持数据持久化(由内存写入磁盘)
5. 支持主从集群(是指从节点备份主节点数据,提高安全性)、分片集群(是指数据拆分)。
6.支持多语言客户端。

速度快 最重要的原因是基于内存,MySQL是基于磁盘的。

redis命令行

redis 是键值型(key -value)型,value支持多种不同的数据结构.不同的数据结构,有不同的命令行对数据,进行增删改查。我们可以根据官方文档.查询相关命令行,进行数据操作。根据文档的group查询相关数据结构命令行
常用的value 数据类型

  1. String 类型(字符串)
  2. Hash 类型(哈希表)(value 值也是key-value的形式)hase结构可以对value中某一个值进行更改。他是将对象中每个字段都是独立存储的。
  3. List 类型(是一个双向链表结构)他是有序的,元素可以重复。通常用来保存对数据有顺序要求的(点赞,评论)
  4. set类型 (可以看作一个haseMap)他是无序、元素不可重复。通常用来实现关注、共同好友等功能。
  5. SortedSet (可排序的哈希表)他是根据Score属性对元素进行排名。

redis有效期单位

redis 有效期是以秒为单位

redis key的结构

redis key的结构 是允许有多个单词形式的层级结构,多个单词之前用:隔开,格式如下:项目名称:业务名称:id。

redis 用途

redis主要用于数据缓存。

缓存数据分类可以分为实时同步数据和阶段性同步数据。阶段性同步数据可以在服务器启动的时候先把数据写入到redis里面。用户访问数据,数据返回会更加快速。

请添加图片描述

redis 线程

redis 3.0以前是redis单线程的。

单线程

redis单线程 是采用多路复用技术。

对于多路复用器的多路选择宣发常见的有三种:select模型(底层是数组)、poll模型(、epoll模型。

优点:维护性高、维护简单。

不存在并发读写情况、也就不存在执行顺序不确定性、不存在线程切换的开销、不存在为了数据安全进行加锁/解锁的开销。

请添加图片描述

缺点:性能会受到影响,由于单线程只能开一个处理器,所以会形成处理器浪费。

redis请求性能

多线程 (多线程I/O模型+单线程)

多线程 I0 模型中的“多线程”仅用于接受、解析客户端的请求,然后将解析出的请求写入到任务队列。而对具体任务(命令)的处理,仍是由主线程处理。这样做使得用户无需考虑线程安全问题I无需考虑事务控制,无需考虑像 LPUSH/LPOP 等命令的执行顺序问题。

优点:结合了多线程和单线程的优点。
缺点:他并非真正意义的多线程,因为在处理任务的线程还是单线程的,所以对性能还是会有影响的。

请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值