排序
Redis如何为List/Set/Hash的元素设置单独的过期时间
1. 引言 1.1 消费队列 这天,不念在购买火车票时,发现如果存在一个未支付的订单时,就不能再进行购票了。如果把待支付的订单放在一个队列里面,那么队列的长度就只能是 1. 正好最近用 Redis 比...
什么是消息队列?
消息队列是在消息的传输过程中保存消息的容器,用于接收消息并以文件的方式存储,一个消息队列可以被一个也可以被多个消费者消费,包含以下 3 元素: Producer:消息生产者,负责产生和发送消息...
JAVA线程池实现原理
1、任务在提交的时候,首先判断核心线程数是否已满,如果没有满则直接添加到工作线程执行 2、如果核心线程数满了,则判断阻塞队列是否已满,如果没有满,当前任务存入阻塞队列 3、如果阻塞队列...
如何设计一个线程池
设计一个线程池涉及到多个方面,包括线程的创建与销毁、任务的提交与执行、线程间的通信等。 以下不念给出的是一个简单的线程池设计思路: 线程池的结构:创建一个线程池类,其中包含一个任务队...
Redis除了做缓存,还能做什么?
分布式锁:通过 Redis 来做分布式锁是一种比较常见的方式。通常情况下,我们都是基于 Redisson 来实现分布式锁。 限流:一般是通过 Redis + Lua 脚本的方式来实现限流。 消息队列:Redis 自带的...
什么是消息中间件
消息中间件(Message Broker)是一种在分布式系统中用于传递消息、通知和事件的基础架构组件。 它允许不同组件、应用程序或系统之间异步地交换数据和信息,以实现削峰、解耦和可扩展的通信。 消...
深入浅出RabbitMQ:顺序消费、死信队列和延时队列
1. 引言 在今天的文章中,我们来聊一聊 RabbitMQ,这是不念在工作中用的最早的消息中间件,主要用于大量数据的异步消费。 2. RabbitMQ 2.1 核心组件 RabbitMQ 是一个开源的消息中间件,它实现了...
探究背后的魔力:消息队列的运行原理详解
消息队列是一种在分布式环境中进行数据交换的技术,被广泛应用于多种场景中,如系统解耦、流量削峰、数据缓冲等。 它的作用是接收、存储和转发消息。 了解消息队列的工作原理,能帮助我们更好地...