随笔分类 -  消息队列

这里详细讲解了activemq,rocketmq rabittmq.kaff等四种常用的消息队列
摘要:概述 本文介绍使用ELK(elasticsearch、logstash、kibana) + kafka来搭建一个日志系统。主要演示使用spring aop进行日志收集,然后通过kafka将日志发送给logstash,logstash再将日志写入elasticsearch,这样elasticsearc 阅读全文
posted @ 2020-10-20 00:13 King-DA 阅读(506) 评论(0) 推荐(0) 编辑
摘要:1、保证消息不丢失(三步)1.1、开启事务(不推荐)1.2、开启confirm(推荐)1.3、开启RabbitMQ持久化(交换机、队列、消息)1.4、关闭RabbitMQ自动ack(改成手动) 2、保证消息不重复消费2.1、幂等性(每个消息用一个唯一标识来区分,消费前先判断标识有没有被消费过,若已消 阅读全文
posted @ 2020-07-27 00:32 King-DA 阅读(859) 评论(0) 推荐(0) 编辑
摘要:进入正题,本文会介绍两种实现rabbitmq的ack模式的方法,分别为: 一、通过配置文件配置。 二、通过手动注册 SimpleMessageListenerContainer容器实现。 先介绍方法一:通过配置文件配置。此类实现起来较为方便,通过springboot的配置文件以及注解的形式即可完成。 阅读全文
posted @ 2020-07-27 00:31 King-DA 阅读(817) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ的使用 用户 1、超级管理员(administrator) 可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。 2、监控者(monitoring) 可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等) 3 阅读全文
posted @ 2020-07-26 17:06 King-DA 阅读(2174) 评论(0) 推荐(0) 编辑
摘要:什么是MQ? 消息总线(Message Queue),是一种跨进程、异步的通信机制,用于上下游传递消息。由消息系统来确保消息的可靠传递。 MQ是干什么用的? 应用解耦、异步、流量削锋、数据分发、错峰流控、日志收集等等... MQ衡量标准 服务性能、数据存储、集群架构 主流竞品分析 当前市面上mq的产 阅读全文
posted @ 2020-07-19 18:11 King-DA 阅读(641) 评论(0) 推荐(0) 编辑
摘要:1、什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供 阅读全文
posted @ 2020-07-19 16:36 King-DA 阅读(500) 评论(0) 推荐(0) 编辑
摘要:MQTT 入门介绍 一、简述 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于, 阅读全文
posted @ 2020-03-09 08:29 King-DA 阅读(1161) 评论(0) 推荐(0) 编辑
摘要:比如说这个消息队列系统,我们来从以下几个角度来考虑一下 (1)首先这个mq得支持可伸缩性吧,就是需要的时候快速扩容,就可以增加吞吐量和容量,那怎么搞?设计个分布式的系统呗,参照一下kafka的设计理念,broker -> topic -> partition,每个partition放一个机器,就存一 阅读全文
posted @ 2019-07-03 02:29 King-DA 阅读(267) 评论(0) 推荐(0) 编辑
摘要:如何解决消息队列的延时以及过期失效问题?消息队列满了以后怎么处理?有几百万消息持续积压 几小时.怎么解决? 你看这问法,其实本质针对的场景,都是说,可能你的消费端出了问题,不消费了,或者消费的极其极其慢。接着就坑爹了,可能你的消息队列集群的磁盘都快写满了,都没人消费,这个时候怎么办?或者是整个这就积 阅读全文
posted @ 2019-07-03 02:25 King-DA 阅读(446) 评论(0) 推荐(0) 编辑
摘要:我举个例子,我们以前做过一个mysql binlog同步的系统,压力还是非常大的,日同步数据要达到上亿。mysql -> mysql,常见的一点在于说大数据team,就需要同步一个mysql库过来,对公司的业务系统的数据做各种复杂的操作。 你在mysql里增删改一条数据,对应出来了增删改3条binl 阅读全文
posted @ 2019-07-03 02:09 King-DA 阅读(233) 评论(0) 推荐(0) 编辑
摘要:如果说你这个是用mq来传递非常核心的消息,比如说计费,扣费的一些消息,因为我以前设计和研发过一个公司非常核心的广告平台,计费系统,计费系统是很重的一个业务,操作是很耗时的。所以说广告系统整体的架构里面,实际上是将计费做成异步化的,然后中间就是加了一个MQ。 我们当时为了确保说这个MQ传递过程中绝对不 阅读全文
posted @ 2019-07-03 01:40 King-DA 阅读(710) 评论(0) 推荐(0) 编辑
摘要:首先就是比如rabbitmq、rocketmq、kafka,都有可能会出现消费重复消费的问题,正常。因为这问题通常不是mq自己保证的,是给你保证的。然后我们挑一个kafka来举个例子,说说怎么重复消费吧。 kafka实际上有个offset的概念,就是每个消息写进去,都有一个offset,代表他的序号 阅读全文
posted @ 2019-07-03 00:43 King-DA 阅读(1124) 评论(0) 推荐(0) 编辑
摘要:Rabbitmq的高可用 RabbitMQ是比较有代表性的,因为是基于主从做高可用性的,我们就以他为例子讲解第一种MQ的高可用性怎么实现。 rabbitmq有三种模式:单机模式,普通集群模式,镜像集群模式 1)单机模式 就是demo级别的,一般就是你本地启动了玩玩儿的,没人生产用单机模式 2)普通集 阅读全文
posted @ 2019-07-03 00:17 King-DA 阅读(417) 评论(0) 推荐(0) 编辑
摘要:kafka,activemq rabbitmq.rocketmq的优点和缺点: 特性 ActiveMQ RabbitMQ RocketMQ Kafka 单机吞吐量 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 10万级,Roc 阅读全文
posted @ 2019-07-02 23:37 King-DA 阅读(631) 评论(0) 推荐(0) 编辑
摘要:系统可用性降低? 一旦mq不能使用以后,系统A不能发送消息到mq,系统BCD无法从mq中获取到消息.整个系统就崩溃了. 如何解决: 系统复杂程度增加? 加入mq以后,mq引入来的问题很多,然后导致系统的复杂程度增加. 如何解决 系统的一致性降低? 有人给系统A发送了一个请求,本来这个请求应该系统BC 阅读全文
posted @ 2019-07-02 23:08 King-DA 阅读(185) 评论(0) 推荐(0) 编辑
摘要:MQ的常见的应用场景为:解耦,异步,流量削峰 在解耦场景中: 不使用MQ的耦合场景: 使用解耦的场景为: 异步的方式: 不使用MQ的同步高延时请求场景: 使用异步化之后的接口性能优化: 没有使用mq的时候,(不会削峰) 使用mq以后: 阅读全文
posted @ 2019-07-02 22:56 King-DA 阅读(914) 评论(0) 推荐(0) 编辑
摘要:消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成,通过提供消息传递和消息排队模型,它可以在分布式环境下拓展进程间的通信,对于消息中间件,常见的角色大致也就有Producer(生产者).Consumer(消费者) MQ 消息中间件 消息队列 Messag 阅读全文
posted @ 2019-04-23 16:50 King-DA 阅读(2301) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示