排序
探究背后的魔力:消息队列的运行原理详解
消息队列是一种在分布式环境中进行数据交换的技术,被广泛应用于多种场景中,如系统解耦、流量削峰、数据缓冲等。 它的作用是接收、存储和转发消息。 了解消息队列的工作原理,能帮助我们更好地...
MySQL数据实时同步到Elasticsearch解决方案
在实际的项目开发与运维过程中,MySQL 常常扮演着业务数据库的核心角色,以其强大的事务处理能力和数据完整性保障,支撑着系统的稳定运行。 然而,随着数据量的急剧增长和查询复杂度的不断提升...
各种主流消息队列对比
最近发现很多号主发消息队列的文章,质量参差不齐,相关文章我之前也写过,建议直接看这篇。 这篇文章,主要讲述 Kafka、RabbitMQ、RocketMQ 和 ActiveMQ 这 4 种消息队列的异同,无论是面试,...
Redis如何为List/Set/Hash的元素设置单独的过期时间
1. 引言 1.1 消费队列 这天,不念在购买火车票时,发现如果存在一个未支付的订单时,就不能再进行购票了。如果把待支付的订单放在一个队列里面,那么队列的长度就只能是 1. 正好最近用 Redis 比...
什么是消息队列?
消息队列是在消息的传输过程中保存消息的容器,用于接收消息并以文件的方式存储,一个消息队列可以被一个也可以被多个消费者消费,包含以下 3 元素: Producer:消息生产者,负责产生和发送消息...
JAVA线程池实现原理
1、任务在提交的时候,首先判断核心线程数是否已满,如果没有满则直接添加到工作线程执行 2、如果核心线程数满了,则判断阻塞队列是否已满,如果没有满,当前任务存入阻塞队列 3、如果阻塞队列...
如何设计一个线程池
设计一个线程池涉及到多个方面,包括线程的创建与销毁、任务的提交与执行、线程间的通信等。 以下不念给出的是一个简单的线程池设计思路: 线程池的结构:创建一个线程池类,其中包含一个任务队...