文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Redis的特点及功能

2023-06-03 02:22

关注

本篇内容介绍了“Redis的特点及功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、Redis的诞生

 Redis创建者,出生于西西里岛的意大利人(antirez)发明的,个人网站,http://invece.org。早年是系统管理员,2004-2006 年做嵌入式方面的工作,之后接触 WEB,2007 年和朋友共同创建了一个网站 LLOOGG.com,并为了解决这个网站的负载问题而在 2009 年发明了 Redis。
说到这个 LLOOGG.com 网站,我们来看看这个到底是个干嘛的网站,LLOOGG.com网站是一个访客信息追踪网站,网站可以通过 javascript 脚本,将访客的 IP 地址、所属国家、阅览信息、访问页面地址等数据传送给 LLOOGG.com。
 

Redis的特点及功能
 
 
三个网站正在向 LLOOGG.com 发送它们的访客浏览记录
Redis的特点及功能
 
这个就是 LLOOGG.com 的用户界面,ps:Google 的 Analytics知道 2011 年才有了实时功能,所以说 LLOOGG.com 的实时反馈想法在当时 2007 年还是很有新意的。
LLOOGG 的运作方式 

Redis的特点及功能

比如说这里有三个网站,为了记录每个被追踪网站的浏览信息,LLOOGG.com 需要为每个被追踪的网站创建一个列表(list),每个列表需要根据用户的设置,储存最新的 5到10000 条浏览记录
各个网站发送的浏览记录会分别进入相应的队列

Redis的特点及功能
 
FIFO 机制,当列表的长度超过用户指定的最大长度时,程序每向列表推入一条记录,就需要从列表中弹出一条最旧的记录,图中展示比如用户设置列表最大长度为 5
LLOOGG 怎么引起负载问题的呢?

随着 LLOOGG 的用户越来越多,LLOOGG 要维护的列表数量也越来越多,要执行的推入和弹出操作也越来越多,当时 LLOOGG 当时使用 MYSQL 数据库,而每次 MYSQL执行推入和弹出操作都要进行硬盘写入和读取,程序的性能严重受制于硬盘 I/O,很多操作都堆在那里,然后网站整个就没法运作了。
这个负载问题的根本原因就是这个硬盘 IO,所以 antirez 在不改变硬件的基础上,通过提升列表操作的性能来解决负载问题,决定自己写一个具有列表结构的内存数据库原型。最重要的是数据存储在内存而不是硬盘,所以程序的性能不会受到硬盘 IO 限制,可以以极快的速度执行针对列表的堆入和弹出操作。结果试验,确实解决了 LLOOGG 当时

的负载问题,于是 antirez 使用 C 语言重写了这个内存数据库,并给它加上了持久化功能,这个就是 Redis 的诞生!

二、Redis特点

世界上有无数种数据库,为什么要使用 Redis 呢,我们来看看它的优点

2.1独特的键值对模型

我们知道很多数据库只能处理一种数据结构:
      SQL数据库----二维表格

      Memcached----键值对数据库,键值都是字符串
文档数据库(CouchDB、MongoDB)----由 JSON/BSON 组成的文档

当然不是他们这些数据库不好,而是一旦数据库提供的数据结构并不适合去做某件事的话,程序写起来就会非常的麻烦和不自然。

2.2数据结构丰富

Redis 虽然也是键值对数据库,但是和 Memcached 不同的是,Redis 支持多种类型的数据结构,不仅可以是字符串,同时还提供散列(hashes),列表(lists),集合(sets),有序集合(sorted sets)等数据结构。

Redis的特点及功能  
通过选用不同的数据结构,用户可以使用 Redis 解决各式各样的问题。
数据库有两种,一种硬盘数据库,一种内存数据库

硬盘是把值储存在硬盘,典型的是 SQL 数据库


 Redis的特点及功能
在内存里面就存储一下索引,当硬盘数据库想访问硬盘的值时,它先在内存里面找到索引,然后在找值,问题是什么,在读取和写入硬盘的时候,如果读写比较多的时候,它会把硬盘 IO 堵死。
至于内存数据库,它会直接把值放到内存里面,内存数据库就直接把值取到,风一样的感觉,读写数据的时候都不会受到硬盘 IO 速度的限制,所以速度极快。

Redis的特点及功能

2.3数据的持久化

Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

2.4数据的备份

Redis支持数据的备份,即master-slave模式的数据备份。

“Redis的特点及功能”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯