广告
返回顶部
首页 > 资讯 > 数据库 >redis的应用场景
  • 330
分享到

redis的应用场景

2024-04-02 19:04:59 330人浏览 八月长安
摘要

这篇文章主要探讨了Redis的应用场景,具有一定借鉴价值,需要的朋友可以参考下。如下资料是关于redis的应用场景内容。一:缓存——热数据热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用

这篇文章主要探讨了Redis的应用场景,具有一定借鉴价值,需要的朋友可以参考下。如下资料是关于redis的应用场景内容。

一:缓存——热数据

热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存,毕竟强大到冒泡的QPS和极强的稳定性不是所有类似工具都有的,而且相比于memcached还提供了丰富的数据类型可以使用,另外,内存中的数据也提供了AOF和RDB等持久化机制可以选择,要冷、热的还是忽冷忽热的都可选。

结合具体应用需要注意一下:很多人用springaop来构建redis缓存的自动生产和清除,过程可能如下:

Select 数据库前查询redis,有的话使用redis数据,放弃select 数据库,没有的话,select 数据库,然后将数据插入redis

update或者delete数据库钱,查询redis是否存在该数据,存在的话先删除redis中数据,然后再update或者delete数据库中的数据

上面这种操作,如果并发量很小的情况下基本没问题,但是高并发的情况请注意下面场景:

为了update先删掉了redis中的该数据,这时候另一个线程执行查询,发现redis中没有,瞬间执行了查询sql,并且插入到redis中一条数据,回到刚才那个update语句,这个悲催的线程压根不知道刚才那个该死的select线程犯了一个弥天大错!于是这个redis中的错误数据就永远的存在了下去,直到下一个update或者delete。

二:计数器

诸如统计点击数等应用。由于单线程,可以避免并发问题,保证不会出错,而且100%毫秒级性能!爽。

命令:INCRBY

当然爽完了,别忘记持久化,毕竟是redis只是存了内存!

三:队列

相当于消息系统,ActiveMQRocketMQ等工具类似,但是个人觉得简单用一下还行,如果对于数据一致性要求高的话还是用RocketMQ等专业系统。

由于redis把数据添加到队列是返回添加元素在队列的第几位,所以可以做判断用户是第几个访问这种业务

队列不仅可以把并发请求变成串行,并且还可以做队列或者栈使用

四:位操作(大数据处理)

用于数据量上亿的场景下,例如几亿用户系统的签到,去重登录次数统计,某用户是否在线状态等等。

想想一下腾讯10亿用户,要几个毫秒内查询到某个用户是否在线,你能怎么做?千万别说给每个用户建立一个key,然后挨个记(你可以算一下需要的内存会很恐怖,而且这种类似的需求很多,腾讯光这个得多花多少钱。。)好吧。这里要用到位操作——使用setbit、getbit、bitcount命令。

原理是:

redis内构建一个足够长的数组,每个数组元素只能是0和1两个值,然后这个数组的下标index用来表示我们上面例子里面的用户id(必须是数字哈),那么很显然,这个几亿长的大数组就能通过下标和元素值(0和1)来构建一个记忆系统,上面我说的几个场景也就能够实现。用到的命令是:setbit、getbit、bitcount

五:分布式锁与单线程机制

验证前端的重复请求(可以自由扩展类似情况),可以通过redis进行过滤:每次请求将request Ip、参数、接口等hash作为key存储redis(幂等性请求),设置多长时间有效期,然后下次请求过来的时候先在redis中检索有没有这个key,进而验证是不是一定时间内过来的重复提交

秒杀系统,基于redis是单线程特征,防止出现数据库“爆破”

全局增量ID生成,类似“秒杀”

六:最新列表

例如新闻列表页面最新的新闻列表,如果总数量很大的情况下,尽量不要使用select a from A limit 10这种low货,尝试redis的 LPUSH命令构建List,一个个顺序都塞进去就可以啦。不过万一内存清掉了咋办?也简单,查询不到存储key的话,用Mysql查询并且初始化一个List到redis中就好了。

以上就是redis使用场景介绍的全部内容。

看完上述内容,你们对redis的应用场景有进一步的了解吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网数据库频道,感谢各位的阅读。

您可能感兴趣的文档:

--结束END--

本文标题: redis的应用场景

本文链接: https://www.lsjlt.com/news/36832.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • redis的应用场景
    这篇文章主要探讨了redis的应用场景,具有一定借鉴价值,需要的朋友可以参考下。如下资料是关于redis的应用场景内容。一:缓存——热数据热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用...
    99+
    2022-10-18
  • Redis-nosql应用场景
                》演变过程           》数据的获取不单单单单是从mysql等关系型数据库中获取了      》商品的基本信息          》商品的评价,描述等      》商品的图片     》商品的波段性的...
    99+
    2014-11-06
    Redis-nosql应用场景 数据库入门 数据库基础教程 数据库 mysql
  • Redis的应用场景有哪些
    redis是一个key-value存储系统,可以用在如下场景,1,2,5用得较多1、缓存热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存。2、计数器单线程避免并发问题,高性...
    99+
    2022-10-18
  • Redis的应用场景是什么
    小编给大家分享一下Redis的应用场景是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一丶Redis介绍Redis是一个开源...
    99+
    2022-10-18
  • redis的场景应用有哪些
    这篇文章主要介绍“redis的场景应用有哪些”,在日常操作中,相信很多人在redis的场景应用有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”redis的场景应用有哪些”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-04
  • redis应用场景有哪些?
    redis应用场景有哪些相信很多新手小白对redis的了解处于懵懂状态,通过这篇文章的总结,希望你能收获更多。如下资料是关于???的内容。Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存...
    99+
    2022-10-18
  • redis应用场景有哪些
    这篇文章主要介绍了redis应用场景有哪些,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。redis用在什么地方?redis应用场景● 令牌(To...
    99+
    2022-10-18
  • Redis有哪些应用场景
    这篇文章主要介绍了Redis有哪些应用场景,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Redis 有哪些应用场景缓存:这应该是 Redis...
    99+
    2022-10-19
  • Redis的应用场景都有哪些
    Redis的应用场景都有哪些?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!Redis 有 8 大应用场景!之前讲过Redi...
    99+
    2022-10-18
  • redis锁的应用场景有哪些
    Redis锁的应用场景有以下几个:1. 分布式锁:在分布式系统中,多个节点需要共享某个资源时,使用Redis锁可以保证在同一时间只有...
    99+
    2023-08-12
    redis
  • Redis中有哪些应用场景
    本篇内容介绍了“Redis中有哪些应用场景”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Redis数据类型...
    99+
    2022-10-19
  • 了解Redis常见应用场景
    目录一、String 场景二、Hash 场景三、List 场景四、Set 场景五、zSet 场景一、String 场景 计数功能: 例如掘金文章点击数量,阅读数量。 ...
    99+
    2022-11-12
  • Redis的应用场景都是怎样的
    今天就跟大家聊聊有关Redis的应用场景都是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、缓存String类型例如:热点数据缓存(例如报表...
    99+
    2022-10-18
  • Redis的数据结构及应用场景
    一. 谈谈对redis的理解,它的应用场景。Redis是一个key-value存储系统,它支持存储的value类型包括string字符串、list链表、set集合、sorted Set有序集合和hash哈希等数据类型。这些数据类型都支持pu...
    99+
    2023-06-02
  • Redis字符串类型的应用场景
    这篇文章运用了实例代码展示Redis字符串类型的几种应用场景,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。限流使用redis可以做到限流的作用。redis本身性能极高,可以用它来抵挡部分...
    99+
    2022-10-18
  • redis缓存的应用场景有哪些
    redis缓存的应用场景有哪些?可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。大规模读写数据与数据库读写能力之间的矛盾    &n...
    99+
    2022-10-18
  • redis的主要应用场景有哪些
    redis的主要应用场景有哪些?针对这个问题,今天小编总结了这篇文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的...
    99+
    2022-10-18
  • Redis数据库的应用场景介绍
    一、MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,...
    99+
    2022-06-04
    场景 数据库 Redis
  • Redis的11种Web应用场景简介
    下面列出11种Web应用场景,在这些场景下可以充分的利用Redis的特性,大大提高效率。 1.在主页中显示最新的项目列表 Redis使用的是常驻内存的缓存,速度非常快。LPUSH用来插入一个内容ID,作为关...
    99+
    2022-06-04
    场景 简介 Redis
  • Redis在PHP中的常见应用场景
    Redis是一种基于内存的键值存储数据库,它具有高性能、高可用性、高可扩展性等优点,被广泛应用于各个领域的数据存储和缓存优化。在PHP应用场景中,Redis也有着广泛的应用,本文主要介绍Redis在PHP中常见的应用场景。缓存优化缓存优化是...
    99+
    2023-05-15
    应用场景 PHP redis
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作