Mq

MQTT实现IM即时通讯

MQTT 是一种基于发布订阅模型的即时通讯协议,由于轻巧,开源,易用,耗能少,支持 QOS/遗言(WILL)等特性,正被广泛应用于物联网和移动互联网。消息队列 MQ 提供了对 MQTT 协议的支持,完全兼容 MQTT 标准协议,但是在使用 MQ MQTT 时,对比标准协议,需要注意两点:1. 父级 Topic 需要提前创建根据标准 MQTT 协议,Topi...

RocketMQ多master迁移至多master多slave模式

一、项目背景 由于当前生产环境RocketMQ机器使用年限较长,已经过保,并且其中一台曾经发生过异常宕机事件。并且早期网络规划较乱,生产、开发、测试等网络没有分开,公司决定对当前网络进行规划,区分各个环境网段、机柜,涉及到MQ集群需要迁移,由于物理机比较老旧,使用决定使用新机器替换老机器,并且之前的MQ集群为多master模式,当master宕机是会导...

不恰当使用线程池处理 MQ 消息引起的故障

现状 业务部门反应网站访问特别慢,负责运维监控的同事说MQ消息队列积压了,中间件的说应用服务器内存占用很高,GC 一直回收不了内存,GC 线程占了近 100% 的 CPU,其他的基本上都在等待,数据库很正常,完全没压力。没啥办法,线程、堆 dump 出来后,重启吧,然后应用又正常了。 分析 这种故障之前其实也碰到过了,分析了当时 dump 出来的堆后发现,...

【选型】消息中间件选型

目录 一、概述           什么是消息中间件? 二、消息队列的使用场景          为什么使用消息队列?        消息队列有什么优缺点? 三、目前流行的消息队列优缺点对比 四、总结      一、概述           什么是消息中间件? 消息队列中间件(简称消息中间件)是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数...

主流消息队列rocketMq,rabbitMq比对使用

首先整理这个文章是因为我正好有机会实战了一下rocketmq,阿里巴巴的一个开源消息中间件。所以就与以往中rabbitmq进行小小的比较一下。这里主线的根据常见面试问题进行整理。 一.消息队列常用的场景   1.削峰    例如我们做得考试系统中,用户通过人脸识别登录系统,考虑到考试系统的特殊性,三万名考生参加考试,需要记录人脸识别登录照片。从考试完结果上...

[转] 谈谈mq消息消费的2种方式

本章内容 从消费者的角度出发,分析一下消息消费的两种方式: push方式 pull方式 push方式 消息消费的过程: mq接收到消息 mq主动将消息推送给消费者(消费者需提供一个消费接口) mq属于主动方,消费者属于一种被动消费,一旦有消息到达mq,会触发mq推送机制,将消息推送给消费者,不管消费者处于何种状态。 优点: 消费者代码较少:对于消费...

UNIX网络编程 卷2 源代码使用

1. 下载源码,W. Richard Stevens的主页:http://www.kohala.com/start/ wget http://www.kohala.com/start/unpv22e/unpv22e.tar.gz -P /usr/local/src 2. 解压 tar xvf /usr/local/src/unpv22e.tar.gz -C...

对于应用之间的调用,如何选择rpc还是mq?

两个系统之间的调用,是选择rpc呢还是mq,说一下你们系统的选择吧比如rpc可以是简单的spring httpinvoker,但是前提是都是java应用而且都是用spring framework,可以选择restful的web service或者是重量级的soap web service,或者是使用rmi,或者编写java api的socket程序;或者使...

rabbitMq 索引 restfullApi 笔记

rabbitMq相关技术 什么是MQ? 消息队列(message Queue)本质上是个队列 FIFO先进先出 队列中放的是消息。 主要用途: 不同进程/线程thread之间的通信 为什么会使用消息队列? 1. 不同进程(process)之间传递消息的时候,两个进程之间耦合度过高,当改变其中一个进程时,那么另一个进程也将必须改变。使用MQ后可以先将消息放在...

rabbitMq无法消费发送的q的问题

1、问题叙述:   该项目配置了10来个mq,应对新开发需求,我也加了一个mq配置,然后在本地代码当中调用,当中接受,与前面写法相似,项目上测试环境测试。发现发送了queue之后本地消费日志没有的bug。 处理方案:   1、检查我的mq的配置,检查代码中对应mq的配置,然后重试     看不出问题出在哪里,寻找方法本地测试   2、本地测试,本地项目启动...