Redis--初识

互联网发展史与架构演变

在这里插入图片描述

  • 优化阶段一:小型网站LAMP架构,一台server平天下
    在这里插入图片描述
  • 优化阶段二:各个角色独立部署,提高并发
    在这里插入图片描述
  • 优化阶段三:添加缓存进一步提高性能
    在这里插入图片描述
  • 总结
    • 上面的互联网发展与架构演变中引入了一个分布式缓存的角色
    • 即使在现如今,分布式缓存也是非常重要的!
    • 互联网开发两个重要定律: —李智慧,《大型网站技术架构-核心原理与案例分析》
    • 网站性能优化第一定律: 优先使用缓存优化性能 !
    • 网站访问二八定律: 80%的用户请求,集中在20%的热门数据上面 (应该要将这20%的热门数据放到缓存中,用以提高性能)

NoSQL的引入

互联网三高带来的挑战

  • 1.对数据库的高并发读写的需求
  • 2.对海量数据的高效存储和访问的需求
  • 3.对数据库高可用和高可扩展性的需求
  • 以上需求传统的关系型数据库如MySQL/Oracle都很难满足

传统数据库的其他问题

  • 1.事务
  • 2.读写实时性
  • 3.复杂sql
  • 以上的传统数据库的特点/优势,在现如今的web时代,有些场合是不需要的,要了反而影响性能

NoSQL应运而生

  • 因为以上的种种原因,传统的关系型数据库无法完全满足web新时代的需求
  • 所以诞生了NoSQL技术,NoSQL技术有如下的特点:
    • 1.易扩展
    • 2.高性能
    • 3.高可用
    • 4.灵活的数据模型

NoSQL技术列举

在这里插入图片描述

  • 注意:NoSQL不是一个具体的技术, 而是一类技术的广义统称, 根据不同的应用场景,可以分为如下几类:
    • 1.Key-Value数据库

      • Redis, 里面储存的数据主要是K-V格式, 可以支持根据key高效查询,但是缺少结构化
    • 2.列式数据库

      • HBase,里面的数据以列簇的形式进行存储,方便压缩,支持列的高效查询,但是一般不支持sql
    • 3.文档型数据库

      • MongoDB,主要存储json格式的数据,但是查询语法不统一,一般不支持sql
    • 4.图形数据库

      • Neo4J,主要存储图结构,如社交网络,但是不太容易做分布式集群

Redis脱颖而出

  • 1.为什么大厂都在使用Redis

    • Redis能从众多NoSQL数据库中脱颖而出,一个很重要的原因就是因为Redis的高性能
    • 官方的测试数据,单台Redis 读11w次/s , 写8w次/s
  • 2.Redis官网介绍

  • 3.Redis作者
    在这里插入图片描述

  • Redis作者Salvatore Sanfilippo的github

  • 4.Redis的特点

    • 4.1高效性
    • 4.2原子性(支持高并发,线程安全的)
    • 4.3支持多种数据结构
    • 4.4支持持久化(可以存内存也可以存磁盘)
    • 4.5支持过期时间,支持半事务
  • 5.注意:

    • Redis很优秀但是不能取代MySQL, 因为Redis的ACID(原子性,一致性,隔离性,持久性)特性实现的很简单, 不如MySQL严格
  • 6.注意:

    • 和Memcached的区别:
    • Memcached是Redis之前诞生的比较流行的NoSQL, 不支持数据持久化(也就是数据都存在内存中)
    • Redis可以理解为是Memcached的改进版/plus版…
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值