什么是redis,redis能做什么,redis应用场景

什么是redis,redis能做什么,redis应用场景

Redis是一个key-value存储系统。Redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。这篇文章小编为大家分享了在Windows下进行安装和使用Redis的技巧。

 

Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave。

 

1. 什么是Redis

 

Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。Redis全称为:Remote Dictionary Server(远程数据服务),该软件使用C语言编写,Redis是一个key-value存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set)、hash。

 

2. Redis特点

 

Redis以内存作为数据存储介质,所以读写数据的效率极高,远远超过数据库。以设置和获取一个256字节字符串为例,它的读取速度可高达110000次/s,写速度高达81000次/s。

 

Redis跟memcache不同的是,储存在Redis中的数据是持久化的,断电或重启后,数据也不会丢失因为Redis的存储分为内存存储、磁盘存储和log文件三部分,重启后,Redis可以从磁盘重新将数据加载到内存中,这些可以通过配置文件对其进行配置,正因为这样,Redis才能实现持久化。

 

Redis支持主从模式,可以配置集群,这样更利于支撑起大型的项目,这也是Redis的一大亮点。

 

3. Redis应用场景,它能做什么

 

众多语言都支持Redis,因为Redis交换数据快,所以在服务器中常用来存储一些需要频繁调取的数据,这样可以大大节省系统直接读取磁盘来获得数据的I/O开销,更重要的是可以极大提升速度。

 

拿大型网站来举个例子,比如a网站首页一天有100万人访问,其中有一个板块为推荐新闻。要是直接从数据库查询,那么一天就要多消耗100万次数据库请求。上面已经说过,Redis支持丰富的数据类型,所以这完全可以用Redis来完成,将这种热点数据存到Redis(内存)中,要用的时候,直接从内存取,极大的提高了速度和节约了服务器的开销。

 

总之,Redis的应用是非常广泛的,而且极有价值,真是服务器中的一件利器,所以从现在开始,我们就来一步步学好它。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113839.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android界面设计适配不同屏幕的尺寸和密度解读[通俗易懂]

    Android界面设计适配不同屏幕的尺寸和密度解读[通俗易懂]Android是运行在各种提供不同的屏幕尺寸和密度的设备。Android系统提供跨设备的统一开发环境和处理大部分的工作,以调整每个应用程序的用户界面,以在其上显示的画面。 同时,该系统提供了API,允许您控制您的应用程序的UI特定的屏幕尺寸和密度,以优化你的用户界面设计,不同的屏幕配置。作为设计师也要最大程度地为所有设备的体现良好的用户体验或是方便使用阅读,而不是简单地拉伸以适应屏幕上的设备。

    2022年6月17日
    29
  • Vue.extend详解,自定义toast弹窗

    Vue.extend详解,自定义toast弹窗Vue.extend方法,返回的是一个扩展实例构造器可以理解为组件类的一个构造函数,其属性都为组件内的对应的属性//定义一个组件的构造函数constdivComponent=Vue.extend({ template:`<divv-on:click=”click”>{{text}}</div>`, data(){ return{ text:’helloword’ } }, methods:{ click(){ consol

    2022年9月24日
    2
  • 划分数据集python代码_python 字符串类型

    划分数据集python代码_python 字符串类型本文将详细介绍文本分类问题并用Python实现这个过程。引言文本分类是商业问题中常见的自然语言处理任务,目标是自动将文本文件分到一个或多个已定义好的类别中。文本分类的一些例子如下:分析社交媒体中的大众情感 鉴别垃圾邮件和非垃圾邮件 自动标注客户问询 将新闻文章按主题分类更多Python视频、源码、资料加群683380553免费获取目录本文将详细介绍文本分类问题并用Pyt…

    2022年5月3日
    88
  • 嵌入式C语言的小细节,excel的几个函数[通俗易懂]

    嵌入式C语言的小细节,excel的几个函数[通俗易懂]记录一下笔记嵌入式C语言有时候无法使用Static关键字嵌入式C语言中如果定义了变量没有使用可能报错嵌入式C语言中如果定义了无符号类型的变量最好别去和0比较,可能会报错嵌入式C语言的技巧if,else的嵌套使用得好可以加快速度excel的使用=‘sheet’!A1跨表传递数据很有用excel的使用中,=count(obj1:obj2)是一个很厉害的函数,作用是统计obj1到obj2的数字的个数;…

    2022年10月21日
    3
  • 图书管理系统C语言_c语言图书信息管理系统

    图书管理系统C语言_c语言图书信息管理系统【主要内容】开发一个图书信息管理系统,图书信息包括:图书编号、书名、作者、出版社、类别、出版时间、价格等基本信息(也可以根据自己情况进行扩充,比如是否借出、库存量等)。使之能提供以下基本功能:(1)图书信息录入功能(图书信息用文件保存)--输入(2)图书信息浏览功能--输出(3)查询功能(至少一种查询方式)、排序功能(至少一种排序方式):①按书名查询②按作者名查询按照价钱排序按出版时间排序等等(4)图书信息的删除与修改扩展功能:可以按照自己的程度进行扩展。比如(1)简…

    2022年10月11日
    3
  • Ubuntu下安装lrzsz「建议收藏」

    Ubuntu下安装lrzsz「建议收藏」Ubuntu安装lrzsz使用阿里云时想要上传文件到服务器,使用Xshell远程上传文件,提示安装lrzsz,所以了解一下lrzsz的安装过程在此记录一下。1、下载lrzsz压缩包#wgethttps://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz2、解压#tarzxvflrzsz-0.12.20.tar.gz   …

    2022年6月23日
    163

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号