redis mq
- 深入理解MQ:消息的消费(信息消费的特点和积极作用)
-
在前面的文章中,我们学习了RocketMQ的原理;RocketMQ中命名服务ServiceName的运行流程;以及消息生产、发送的原理和模式。这一篇,就让我们从消息消费的角度去进一步的学习。1消息消费消息的消费主要是由如下几个核心能力组成的:消费方式:Push(推)或者Pull(拉)消费...
- 深入理解MQ:RocketMQ 架构分析(rocketmq底层数据结构)
-
1背景我们前面两篇对主流消息队列的基本构成和技术选型做了详细的分析。从本篇开始,我们会专注当下主流MQ之一的RocketMQ。从他的如下的几个方面去讨论:基础能力(如组织构成、消息发送、消息存储(持久化)、消息通信、消息消费)功能性方面(如消息堆积、消息回溯、消息追踪、消息过滤),高可用性方面(...
- redis7.0源码阅读:Redis中的IO多线程(线程池)
-
一、Redis中的IO多线程原理服务端收到一条信息,给它deconde成一条命令然后根据命令获得一个结果(reply)然后将结果encode后,发送回去redis的单线程是指,命令执行(logic)都是在单线程中运行的接受数据read和发送数据write都是可以在io多线程(线程池)中去运行在Red...
- Redis实现MQ消息队列,附有源码
-
基于PubSub的消息队列PubSub(发布订阅)是Redis2.0版本引入的消息传递模型。顾名思义,消费者可以订阅一个或多个channel,生产者向对应channel发送消息后,所有订阅者都能收到相关消息。SUBSCRIBEchannel[channel]:订阅一个或多个频道PUBLISH...
- 深入理解MQ:数据存储,消息队列的高可用保障
-
1介绍在前面的文章中,介绍了消息的发送和消息通信的原理。但是这边有一个比较核心的关键点,那就是如果已经把消息传递给Broker。在Broker在被消费之前,如何保证消息的稳定性,避免消息丢失和数据。这时候就需要数据持久化数据来进行保障了。根据之前的文章:《消息中间件的技术选型》做的分析,R...
- 消息队列工具 ActiveMQ
-
1、简介同类产品:RabbitMQ、Kafka、Redis(List)1.1对比RabbitMQ最接近的同类型产品,经常拿来比较,性能伯仲之间,基本上可以互相替代。最主要区别是二者的协议不同RabbitMQ的协议是AMQP(AdvancedMessageQueueingProtoco...
- 过瘾! RocketMQ 消息持久化机制,终于明白了
-
作者:平头哥的技术博文链接:https://juejin.im/post/5e8d97cb6fb9a03c930569c1我们知道RocketMQ是一款高性能、高可靠的分布式消息中间件,高性能和高可靠是很难兼得的。因为要保证高可靠,那么数据就必须持久化到磁盘上,将数据持久化到磁盘,那么可能就不...
- Docker-Compose一键搭建MySQL,Redis,RabbitMQ,Kafka开发环境
-
为了使用Docker的桥接网络模式,并确保服务之间可以通过服务名称进行通信,你需要在docker-compose.yml文件中明确设置桥接网络模式,并挂载数据和配置文件。以下是一个完整的示例:version:'3.8'networks:my-bridge-netw...
- 怎么保证消息队列消费的幂等性?
-
(1)比如你拿个数据要写库,你先根据主键查一下,如果这数据都有了,你就别插入了,update一下好吧(2)比如你是写redis,那没问题了,反正每次都是set,天然幂等性(3)比如你不是上面两个场景,那做的稍微复杂一点,你需要让生产者发送每条数据的时候,里面加一个全局唯一的id,类似订单id之类...
- 微服务消息代理选型:Redis、Kafka、RabbitMQ
-
原文https://javakk.com/2279.html在为微服务使用异步通信时,通常使用消息代理。代理确保不同微服务之间的通信可靠稳定,消息在系统内得到管理和监控,并且消息不会丢失。您可以从几个消息代理中选择,它们的规模和数据功能各不相同。这篇博文将比较三个最受欢迎的代理brokers:Ra...