中间件
java_leejin
持续记录,持续输出----2019.07.27
展开
-
消息中间件如何保证消息的顺序性?
1 rabbitmq1.1 rabbitmq顺序会错乱的场景一个queue,但是有多个consumer1.2 如何保证消息的顺序性需要保证消息消费顺序性的数据,写到一个queue中,并只让一个消费者进行消费2 kafka2.1 kafka顺序会错乱的场景kafka本身是不会发生消息顺序错乱kafka一个patition只有一个消费者消费加了同一个key的消息,只会进...原创 2019-07-28 22:15:28 · 1119 阅读 · 0 评论 -
如何解决消息队列的延时以及过期失效问题?
有几百万消息持续积压几小时,怎么解决?如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,怎么解决?如果你积压了几百万到上千万的数据,即使消费者恢复了,也需要大概1小时的时间才能恢复过来一般这个时候,只能操作临时紧急扩容了,具体操作步骤和思路如下:1)先修复consumer的问题,确保其恢复消费速度,然后将现有cnosumer都停掉2...原创 2019-07-30 19:45:15 · 1778 阅读 · 2 评论 -
消息中间件-----Rabbitmq入门Demo
消息中间件三部曲:开启服务器配置文件发送与接受1, 生产者的Rabbitmq.xml配置1.1 配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3....原创 2019-07-27 19:36:20 · 147 阅读 · 0 评论 -
消息中间件-----RocketMQ入门Demo
消息中间件三部曲:开启服务器配置文件发送与接受1, 生产者的Rabbitmq.xml配置0 依赖 <!-- RocketMQ --> <dependency> <groupId>com.alibaba.rocketmq</groupId> &l...转载 2019-07-27 19:57:39 · 311 阅读 · 0 评论 -
消息中间件-----ActiveMQ入门Demo
JMS消息服务应用程序结构支持两种模型:1. 点对点模型2. 发布者/订阅者模型JMS消息格式类型值MapMessagekey-value键值对TextMessage字符串对象ObjcetMessage一个序列化的Java对象ByteMessage一个未解释字节的数据流StreamMessageJava原始值的数据流Demo依赖...原创 2019-07-27 19:12:44 · 200 阅读 · 0 评论 -
消息中间件优缺点及如何抉择
关于消息中间件(ActiveMQ,RabbitMQ,RocketMQ,kafka)的入门Demo,本篇不再叙述,主要讲解下面两个问题点:1. 为什么使用消息队列?2. 消息队列有什么优点和缺点?1. 为什么使用消息队列?使用消息队列是要更觉业务需求的场景二决定的!先说一下消息队列的常见使用场景吧,其实场景有很多,但是比较核心的有3个:解耦、异步、削峰1.1 解耦画个图来说明一下,A...原创 2019-07-28 01:57:01 · 818 阅读 · 0 评论 -
如何保证消息队列的高可用及消息不被重复消费?
在实际生产环境中,MQ承担着消息传递的作用,如果MQ意外挂掉了,整个系统就无法正常工作了,那么消息队列的高可用性就非常重要了。本文主要讲RabbitMQ和kafka两个消息队列的高可用性分析。一、 RabbitMQ的高可用(非分布式)1.1 rabbitmq有三种模式:单机模式普通集群模式镜像集群模式1.1.1 单机模式基本上是做Demo使用1.1.2 普通集群模式多台服...原创 2019-07-28 10:43:23 · 3378 阅读 · 3 评论 -
如何保证消息的可靠性传输(如何处理消息丢失的问题)?
mq消息丢失一般分为两种要么是mq自己弄丢了要么是我们消费的时候弄丢了。咱们从rabbitmq和kafka分别来分析一下吧(1)rabbitmqrabbitmq这种mq,一般来说都是承载公司的核心业务的,数据是绝对不能弄丢的1)生产者弄丢了数据生产者将数据发送到rabbitmq的时候,可能数据就在半路给搞丢了,因为网络啥的问题,都有可能。1.1 开启RabbitMQ的事物此...原创 2019-07-28 11:49:38 · 258 阅读 · 0 评论