数据库:Redis相关知识梳理

1、数据类型

  • string(字符串):最基本的k-v存储 ,适合验证码、配置信息等

  • list(列表):适合有序/固定的列表。比如行政区、字典表、消息队列等。

  • set(集合):支持交集、并集、差集等操作。可以用来找共同点等。

  • hash(哈希):类似于唯一标识,value对应详情。适合存储文章内容、商品内容等详情。

  • zset(有序集合):增强版本增加了一个score参数,用来排序,适合排行榜类的数据存储

2、优点

  • 速度快。数据存储在内存中,查找和操作的时间复杂度都是O(1)。类似于HashMap

  • 多种数据类型,应用场景丰富

  • 支持事务特性、所有操作都是原子性

  • 支持数据的持久化,可以将数据保存在磁盘中

  • 支持主-从模式的数据库备份

  • 性能高。读取速度可达到110000次/s;写81000次/秒

  • 支持publish/subcribe、通知、key过期特性

3、场景举例

3.1 缓存热点数据

        字典表

行政区

用户登录信息

配置信息

3.2 计数器

        点赞数

浏览数

3.3 消息队列

建议采用专门的消息中间件会更可靠。

3.4 最新列表

最新文章列表

上架新品列表

3.5 排行榜

        文章排名

商品排名

3.6 分布式锁、单线程机制

        电商秒杀

全局增量ID

3.7时效信息存储

验证码5分钟失效

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270593.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python线性回归分析看相关性_机器学习入门-相关分析之简单线性回归

一.什么是机器学习?简单来说,机器学习是一类算法的总称,这些算法企图从大量历史数据中挖掘出其中隐含的规律,并用于预测或者分类,更具体的说,机器学习可以看作是寻找一个函数,输入是样本数据&am…

Android Listview 性能优化

首先我一般使用的适配器是BaseAdapter,其中有两个方法最主要,分别是: getCount,getView,在对Listview 进行优化的时候,首先使用 convertview 和viewHolder 配合进行优化,使用convertview的母的是控件复用,从而加到减少内存的使用,使用viewHolder 的是减少findbyid 的次数.但是在…

前端:JS实现数组去重常用的六种方法介绍

今天给大家分享JS实现数组去重常用的六种方法&#xff0c;希望对大家能有所帮助&#xff01;定义变量let arr [20,6,13,20,100,8,13,11]; let newArr [];1、两层循环去重 for(let i 0;i < arr.length;i){for(let j i 1;j < arr.length;j){if(arr[i] arr[j]){arr.sp…

python自定义colorbar_python可视化 matplotlib画图使用colorbar工具自定义颜色

python matplotlib画图使用colorbar工具自定义颜色 colorbar(draw colorbar without any mapple/plot)自定义colorbar可以画出任何自己想要的colorbar&#xff0c;自由自在、不受约束&#xff0c;不依赖于任何已有的图(plot/mappable)。这里使用的是mpl.colorbar.ColorbarBase类…

不能读取文件“itunes.library.itl”因为它是由更高级别的itunes所创建的

转自&#xff1a;https://zhidao.baidu.com/question/80796363.html 是因为你安装过高版本的后又装你版本的itunes. 你在电脑上搜索所有硬盘上的itunes library.itl这个文件.搜到就删了&#xff0c;而且搜索里选择“高级选项”除了区分大小写其它几个都钩上。这样注消下&#x…

路由器:什么是软路由,看完本篇文章你就懂了

今天小编给大家介绍一下软路由具体是什么&#xff0c;有什么实际用途&#xff0c;看完本篇你就懂了&#xff01; 一、软路由与硬路由概念介绍 硬路由&#xff1a;目前我们家里普遍使用的路由器&#xff0c;有厂家提供整体的解决方案&#xff0c;包括处理器、电源供应、嵌入式软…

c#form+mysql储存读取图片_C#从SQL server数据库中读取l图片和存入图片

本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代…

if...else..的错误用法

1.最近在写js代码完成一个前段DOM操作的函数时&#xff0c;自己错误的使用了if..else..控制体。为什么是错误的呢&#xff1f;看看我的 代码你就明白了&#xff1a; 1 document.getElementsByClassName(eButton)[0].οnclickfunction(){2 var checkeddocument.getElementsB…

Git服务器报错:host key for (ip地址) has changed and you have requested strict checking

一:报错提示 如下&#xff1a; WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key …

软件:常用 Linux 软件汇总,值得收藏

目录 1、音频软件 2、聊天软件 3、数据备份与恢复 4、桌面个性化工具 5、开发必备 6、 电子书工具 7、 编辑器软件 8、教育软件 9、电子邮件软件 10、文件管理器 11、娱乐游戏 12、 图形工具 13、互联网浏览 14、 办公效率工具 15、 生产力效率工具 16、 安全防护 17、文件共享…

java上下文即ServletContext

上下文即ServletContext,是一个全du局的储存信zhi息的空间&#xff0c;服务器启动&#xff0c;其就dao存zhuan在&#xff0c;服务器关闭&#xff0c;其才释放。 所有用户共用一个ServletContext。所以&#xff0c;为了节省空间&#xff0c;提高效率&#xff0c;ServletContext中…

数据帧,数据包,报文段,报文,分组,数据包的概念和区别

应用层——消息传输层——数据段(segment)网络层——分组、数据包&#xff08;packet&#xff09;链路层——帧&#xff08;frame&#xff09;物理层——P-PDU&#xff08;bit&#xff09;分组、包&#xff0c;packet&#xff0c;信息在互联网当中传输的单元&#xff0c;网络层…

python开源自动化测试平台_8款开源自动化测试框架,速速收藏

原标题&#xff1a;8款开源自动化测试框架&#xff0c;速速收藏来源&#xff1a;http://www.51testing.com/近年来&#xff0c; 自动化测试越来越热门&#xff0c;该领域新的挑战和机遇也在同步产生&#xff0c;尤其是AI&#xff0c;RPA和机器学习&#xff0c;可以预见会在几年…

SpringBoot集成Redis用法笔记

今天给大家整理一下SpringBoot集成Redis用法笔记&#xff0c;希望对大家能有所帮助&#xff01;一、Redis优点介绍1、速度快不需要等待磁盘的IO&#xff0c;在内存之间进行的数据存储和查询&#xff0c;速度非常快。当然&#xff0c;缓存的数据总量不能太大&#xff0c;因为受到…

tomcat和servlet的关系

tomcat和servlet的关系 Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat 作为Servlet容器,负责处理客户请求,把请求传送给Servlet,并将Servlet的响应传送回给客户.而Servlet是一种运行在支持Java语言的服务器上的组件. Servlet最常见的用途是扩展Java Web服务器功能,提…

Linux常用远程连接工具介绍,总有一款适合你

目录 1、xshell 2、winscp 3、PuTTY 4、MobaXterm 5、FinalShell 今天给大家推荐Linux常用远程连接工具&#xff0c;希望对大家能有所帮助&#xff01; 1、xshell 介绍&#xff1a; xshell是一个非常强大的安全终端模拟软件&#xff0c;它支持SSH1, SSH2, 以及Windows平台的TEL…

python高性能写法_py 高性能低级,高级写法思考

这里所谓的低级&#xff0c;高级是指封装抽象的程度。低级指os.fork()高级是指 multiprocessing包一般根据业务需求&#xff0c;一个主进程负责维护接收&#xff0c; 不同的子进程处理不同的需求。根据各同需求组合多进程多线程多进程&#xff0b;多线程协程也可基于uvloop事件…

Linux远程管理协议相关知识介绍

一、什么是远程管理远程管理&#xff0c;实际上就是计算机&#xff08;服务器&#xff09;之间通过网络进行数据传输&#xff08;信息交换&#xff09;的过程&#xff0c;与浏览器需要 HTTP 协议&#xff08;超文本传输协议&#xff09;浏览网页一样&#xff0c;远程管理同样需…

使用ArcGIS JavaScript API 3.18 加载天地图

对于中国开发者在创建GIS应用的时候&#xff0c;往往比较头疼的是底图资源的缺乏。其实国家测绘地信局就提供一个很好的免费资源&#xff1a;天地图。使用ArcGIS API的开发人员可以直接利用该资源作为地图应用的底图。 ArcGIS JavaScript API最近新推出了3.18版本。所以下面示例…