Redis——入门(一)

  • Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

  • 它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

与Mysql的区别:

  1. Redis是非关系型数据库(NoSql),和memcached都是缓存数据库。
  2. redis用于存储使用相对频繁的数据到内存中,mysql用于存放持久化数据到磁盘中。
  3. redis读取速度快,mysql相对速度较慢。
  4. redis数据类型:字符串类型(string),散列类型(hash),列表类型(list),集合类型(set),有序集合类型(zset);mysql数据类型,大致三类:数值,日期,字符
  5. Redis不支持ACID(原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability))
  6. Redis基于sql的结构化查询存储,处理复杂的关系,需要即席查询。

一般来说,mysql用于写入和更新,redis用于读取。 这样就说 mysql->redis的同步用的比较多。 mysql作为数据持久化和管理比redis好太多,redis大多只用来做 数据读取缓存、队列、锁、等等的使用. 因为需求的不同,要根据具体业务场景去选型,一般都是配合使用。


与memcached的区别:

  1. Redis支持更丰富的数据类型
  2. memcached不支持持久化

Redis的持久化

Redis持久化分为两种:

  1. 半持久化(RDB):把修改的操作写入追加的记录文件
  2. 全持久化(AOF):把更新的数据紫萼如磁盘

并在此基础上实现了主从复制(master-slave 同步)


Redis的主从复制

目的:实现读写分离(能写的也能读,但能读的只能读)。


Redis的应用场景

  1. 配合关系关系型数据库做高速缓存。
    如:存储高频词,热门访问的数据,降低数据库IO;
    用于分布式架构,做session共享。
  2. 由于其拥有持久化能力,利用其多样的数据结构存储特定的数据
    来自b站尚学堂
发布了11 篇原创文章 · 获赞 0 · 访问量 169

猜你喜欢

转载自blog.csdn.net/qq_43117978/article/details/105339598
今日推荐