0%

消息队列–消息堆积处理方案

如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?

  • 关于这个事儿,我们一个一个来梳理吧,先假设一个场景,我们现在消费端出故障了,然后大量消息在mq里积压,现在事故了,慌了
阅读全文 »

什么是消息队列

  • 我们可以把消息队列比作是一个存放消息的容器,当我们需要使用消息的时候可以取出消息供自己使用
  • 队列是一种先进先出的数据结构

为什么要使用消息队列

阅读全文 »

1、你们为什么使用mq?具体的使用场景是什么?

mq的作用很简单,削峰填谷。以电商交易下单的场景来说,正向交易的过程可能涉及到创建订单、扣减库存、扣减活动预算、扣减积分等等。每个接口的耗时如果是100ms,那么理论上整个下单的链路就需要耗费400ms,这个时间显然是太长了。

img

阅读全文 »

缓存穿透(redis数据不存在,访问数据库)

概念

  • 在默认情况下,用户请求数据时,会先在缓存(Redis)中查找,若没找到即缓存未命中,再在数据库中查找,数量少可能问题不大,可是一旦大量的请求数据(例如秒杀场景),缓存没有命中的话,就会将请求全部转移到数据库上,造成数据库的压力剧增,就有可能导致数据库的崩溃。

  • 网络安全中的也有人恶意使用这种手段进行攻击称为洪水攻击。

阅读全文 »

Redis主从复制

概念

  • 主从复制,是指将一台redis服务的数据,复制到其他的 redis 服务器。前者称为主节点(Master/Leader),后者称为从节点(Slave/Follower),数据的复制是单向的,只能由主节点复制到从节点(主节点以写为主、从节点以读为主)。
阅读全文 »

Redis发布订阅模式

概念

Redis发布订阅(pub/sub)是一种消息通信模式:发布者(pub),发送消息,订阅者(sub)接收消息。

阅读全文 »

Redis 单线程模型详解

  • Redis基于Reactor模型设计开发了一套高效的事件处理模型。这套事件处理模型对应的事Redis中的文件事件处理器(file event handler)。由于文件处理器是单线程方式运行的,所以我们一般都说Redis是单线程模型。

既然是单线程,怎么监听大量客户端连接

阅读全文 »

持久化—— RDB

什么是RDB

  • 在指定时间间隔后,将内存中的数据快照写入硬盘,在恢复的时候,直接读取快照文件,进行数据的恢复。

  • 默认情况下,redis将数据库快照保证在名字为 dump.rdb 的二进制文件中。文件名可以在配置文件中进行自定义。

阅读全文 »

Redis事务概念

  • Redis 的单条命令是保证原子性的,但是redis事务不能保证原子性

Redis 事务本质:一组命令的集合。

—————– 队列 set set set 执行 ——————-

事务中每条命令都会被序列化,执行过程中按照顺序执行,不允许其他命令进行干扰。

  • 一次性
  • 循序性
  • 排他性

  1. Redis 事务没有隔离级别的概念
  2. Redis 单条命令是保证原子性的,但是事务不保证原子性
阅读全文 »

Redis配置

redis-5.0.4 配置解读

开头说明

阅读全文 »