在开始这篇文章之前我们先思考一个问题:一个新的技术为什么出现?其他技术是如此,Redis亦是如此。
本质:所有新的技术出现都是当前技术出现了一些问题,而且当前技术已经无法解决,从而需要去研究新的技术来解决当前的瓶颈。(在学新的技术之前我们都要去了解这个技术的诞生和所解决行业存在的问题,这对于学习任何技术都是有利的)

什么是Redis?
Redis 全称:Remote Dictionary Server,即远程字典服务,是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。此外Redis是一个基于内存的Key-Value非关系型数据库。
我们知道数据库分为两大类:
一、关系型数据库:关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。例如Oracle, MySQL, 和微软的 SQL Server都属于关系型数据库,相信作为开源数据库的MySQL,学编程的基本都使用过,也是最受欢迎的数据库之一,其中阿里的数据库也是基于MySQL做的二次开发。
二、非关系型数据库:也称NoSQL(non-relational或Not Only SQL),随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。(与前面说的本质是一样的)例如mongodb, redis, hbase都属于非关系型数据库。

回到主题:Redis是一个基于内存(缓存)数据库的非关系型数据库,我们想象一下,在没有缓存数据库之前,我们的请求都是直接向数据库发起请求的,如果微博没有使用Redis, 我们每个人在看一条热搜时,都会往微博的数据库发起一次请求,当看热搜的人多,请求也就多了,服务器可能会出现延迟、宕机等影响着用户体验的情况,每个人的请求就好比一颗子弹一样直接打到数据库服务器上,打的多了便千疮百孔。
有了Redis就好比给数据库服务器加了一层防弹衣,我们的请求都先往Redis发起,看看Redis里有没有我们需要的数据,没有再前往数据库获取。

Redis的优势也是很突出,它的性能极高!!!Redis读的速度是110000次/s,写的速度是81000次/s。并且还支持集群,当请求多了,可以立马扩容,想要多少个从机都能在毫秒级别完成。当主机宕机了,有哨兵模式!不需要人工干预,便可以快速把下线的主机从集群中踢出去。

后续将从Redis的安装,五种基本数据类型到三种特殊数据类型,事务,集群,主从复制,持久化,再到整合SpringBoot框架,以及Redis被击穿了我们该如何处理?当数据出现不一致时?我们应该如何去解决它。

笔者通过一个多星期的学习,写下的这篇文章,难免有不足之处,更是希望能通过这样方式来唤起大家保持着一颗一直学习的心!

编于:2022.3.15
Author: Griffith_yu

什么是Redis?为什么要用Redis?相关推荐

  1. java实现redis缓存_java实现redis缓存功能

    一.安装redis 1.mac安装,如果有安装brew 可以直接快捷安装:brew install redis 2.linux下载安装wget http://download.redis.io/rel ...

  2. 一文深入了解 Redis 内存模型,Redis 的快是有原因的!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:编程迷思 cnblogs.com/kismetv/p/865 ...

  3. redis未能启动服务器,redis服务启动不了的解决办法(服务器应非法关机了)

    1.确认redis没运行.[[email protected] run]# /etc/init.d/kkmail_redis status redis is not running 2.删除pid文件 ...

  4. Redis入门到精通-Redis高级命令

    2019独角兽企业重金招聘Python工程师标准>>> 高级命令 ​ keys * : 返回满足的所有键 ,可以模糊匹配 ​ exists :是否存在指定的key,存在返回1,不存在 ...

  5. redis集群之REDIS CLUSTER

    redis集群之REDIS CLUSTER 时间 2016-04-11 17:05:00  NoSQL_博客园 原文  http://www.cnblogs.com/zhanchenjin/p/537 ...

  6. redis(3)redis的基础入门(java)

    1.java连接redis Jedis jedis = new Jedis("192.168.1.102", 6379);//报错,拒绝连接 解决方案: 关闭linux防火墙,re ...

  7. ubuntu 下搭建redis和php的redis的拓展

    系统环境: 腾讯云服务器, ubuntu16.0.4.4 ,php7.0 一.安装redis服务 sudo apt-get install redis-server 安装好的redis目录在 /etc ...

  8. [ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器

    原文:[ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器 上一章 [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis  介绍了Red ...

  9. Redis系列-远程连接redis并给redis加锁

    假设两台Redis服务器,ip分别为:192.168.1.101和192.168.1.103,如何在101上通过redis-cli访问103上的redis呢?在远程连接103之前,先讲下redis-c ...

  10. php redis support,PHP 使用 Redis

    安装 开始在 PHP 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 PHP redis 驱动,且你的机器上能正常使用 PHP. 接下来让我们安装 PHP redis 驱动:下载 ...

最新文章

  1. OpenGL编程轻松入门(四)
  2. CNN的一些可视化方法!
  3. 修改 keystore密码
  4. 小学计算机课的活动设计方案,小学信息技术兴趣小组活动策划书三篇
  5. Linux、Windows、RHEL操作系统镜像
  6. 分布领域驱动设计(DDD):领域接口化设计式缓存的选择
  7. MySQL学习-连接查询
  8. 《编写有效用例》阅读笔记05
  9. java nextprime_中国MOOC_零基础学Java语言_第7周 函数_1分解质因数
  10. 晨风机器人回复词库_机器人自动回复问答
  11. 单线、双线、三线以及BGP线路有什么区别?
  12. (云安全)拖库-洗库-撞库
  13. 动态拼接Lambda表达式2
  14. 人工智能时代党政人力资源的思考与变化
  15. win10计算器_你所不知道的 Windows 10 小诀窍:万能计算器、虚拟键盘、屏幕截图标注...
  16. java.lang.StringIndexOutOfBoundsException
  17. 【经验】AngularJS
  18. liner、dense、mlp、fc区别
  19. 企业微信的IM架构设计揭秘:消息模型、万人群、已读回执、消息撤回等
  20. 微信小程序真机调试:createEvent is not a function

热门文章

  1. Android 高级面试题及答案
  2. ros 单向通讯 talker,listener 发布订阅模型
  3. STM32L031 HAL库读写内部EEprom
  4. 收藏本站和设为主页代码(HTML)
  5. Finalshell反复提示输入密码
  6. html仿b站页面代码,B站首页界面设计:附详细教程
  7. 前端.什么是冒泡和阻止冒泡的原因和方法
  8. java构造方法:有参构造方法和无参构造方法区别
  9. ESP8266开发之旅 阿里云生活物联网平台篇② 使用云智能App,配置自己的App,无需开发
  10. 关于人工智能不会使大脑变懒惰的议论文_台湾人工智能学校执行长陈升玮:孩子成为这型人,就不怕被AI取代...