
mq
文章平均质量分 93
追寻北极
没有月亮的晚上,我们相信星光。没有路可走的时候,我们相信远方.--
展开
-
关于RabbitMQ关键性问题的总结
1. RabbitMQ1.1 RabbitMQ数据速率问题在边读边写的情况下:速率只与网络带宽正相关,网络使用率最高能达到接近100%,并且数据使用率很高(90%以上)。 在千兆网下,以500KB一条数据为例,读写速率均能达到200条/s,约为100MB/s。在只写不读的情况下:写入速率瓶颈在于硬盘写入速度。1.2 RabbitMQ数据转载 2015-01-30 12:16:55 · 2352 阅读 · 0 评论 -
RabbitMQ 内部实现
RabbitMQ 的通讯协议发送消息流程:> 10,10: Connection.start> 10,30: Connection.tune> 10,41: Connection.open_ok> 20,11: Channel.open_ok> 85,11: Confirm.select_ok> 60,80: Basic.ack转载 2015-01-30 11:55:28 · 3624 阅读 · 1 评论 -
消息队列RabbitMQ和ActiveMQ的生产者流量控制
Q:MQ 们为什么要做生产者流量控制?A:麻烦就在于:『像 Erlang 的虚拟机实现和设计上都没有阻止用户往一个进程的消息队列里扔消息,当消息的生产速度过快,超过进程的处理能力时,这些消息就堆积起来,占用越来愈多的内存,最终导致VM崩溃。』 Q:我为什么要知道 MQ 在做生产者流量控制?A:当你发现自家的 Producers 动辄被挂起或被阻塞时,你要知道该调 Consu转载 2015-01-30 11:53:03 · 1538 阅读 · 0 评论 -
rabbitmq简明使用系列1(服务器安装,配置,管理)
rabbitmq的安装与启动debian安装添加deb http://www.rabbitmq.com/debian/ testing main到源(/etc/apt/sources.list)中安装:sudo apt-get install rabbitmq-server启动:sudo invoke-rc.d rabbitmq-server stop/star转载 2015-01-30 16:21:27 · 1225 阅读 · 0 评论 -
RabbitMQ源码分析 – 持久化机制
(注:分析代码基于RabbitMQ 2.8.2) 当消息需要持久化(相应队列首先必须是durable)或者因为内存吃紧,需要把消息转移到磁盘的时候就会触发持久化操作。Rabbit中两部分信息涉及到持久化操作:一个是消息本身,由msg_store模块负责([$RABBIT_SRC/src/rabbit_msg_store.erl]),另一个是消息在队列中的位置,由queue_index模块负转载 2015-01-30 11:51:22 · 3211 阅读 · 0 评论 -
rabbitmq技术的一些感悟
Rabbitmq初识rabbitmqRabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。如果不熟悉AMQP,直接看RabbitMQ的文档会比较困难。不过它也只有几个关键概念,这里简单介绍几个概念说明:Broker:简单来说就是消息队列服务器实体。Exchange:消息交换机,它指定消息按转载 2015-01-30 12:18:48 · 2401 阅读 · 0 评论 -
RabbitMQ 内存控制 硬盘控制
一、内存控制:vm_memory_high_watermark 该值为内存阈值,默认为0.4。意思为物理内存的40%。40%的内存并不是内存的最大的限制,它是一个发布的节制,当达到40%时Erlang会做GC。最坏的情况是使用内存80%。如果把该值配置为0,将关闭所有的publishing 。rabbitmqctl set_vm_memory_high_watermark 0转载 2015-01-30 11:51:36 · 6052 阅读 · 0 评论 -
Spring整合Rabbitmq
RabbitMQ是流行的开源消息队列系统,用erlang语言开发。在项目中,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,需要用到RabbitMQ没有找到一篇完整的文章介绍Spring如何整合Rabbitmq应用,琢磨一天搞出的一个入门的demo与伙伴们分享.第一步linux环境下安装rabbitMQ,小弟用的是ubantu,不想浪费太多时间这种安装上su转载 2015-01-30 09:18:22 · 1325 阅读 · 0 评论 -
Worktile中的实时消息推送服务实现
在团队协同工具worktile的使用过程中,你会发现无论是右上角的消息通知,还是在任务面板中拖动任务,还有用户的在线状态,都是实时刷新。Worktile中的推送服务是采用的是基于xmpp协议、erlang语言实现的ejabberd,并在其源码基础上,结合我们的业务,对源码作了修改以适配我们自身的需求。另外,基于amqp协议也可以作为实时消息推送的一种选择,踢踢网就是采用rabbitmq+stomp转载 2015-01-30 09:15:26 · 950 阅读 · 0 评论 -
RabbitMQ系列二(构建消息队列机制)
从AMQP协议可以看出,MessageQueue、Exchange和Binding构成了AMQP协议的核心,下面我们就围绕这三个主要组件 从应用使用的角度全面的介绍如何利用Rabbit MQ构建消息队列以及使用过程中的注意事项。 1. 声明MessageQueue 在Rabbit MQ中,无论是生产者发送消息还是消费者接受消息,都首先需要声转载 2015-01-30 09:19:44 · 1843 阅读 · 0 评论 -
rabbitmq安装问题汇总
安装常见问题:1、启动rabbitmq-server时,报错信息:Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_{log, _err} 解决:使用netstat 查看是否存在,如果存在用kiss 将其杀死,在启动,我试过可以解决。2,报错:Try 'apt-get -f in原创 2014-09-29 15:38:12 · 2929 阅读 · 0 评论 -
Ubuntu 下 rabbitmq集群配置
Ubuntu 下 rabbitmq集群配置原创 2014-08-21 12:39:33 · 2030 阅读 · 0 评论 -
rabbimq集群关闭 启动 重置
rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl cluster rabbit@platform-api2 rabbitmqctl stop_app rabbitmqctl join_cluster rabbit@platform-api2rabbitmqctl start_app原创 2015-01-02 10:17:08 · 3752 阅读 · 0 评论 -
rabitmq官方集群命令
转:http://www.rabbitmq.com/clustering.htmlStarting independent nodesClusters are set up by re-configuring existing RabbitMQ nodes into a cluster configuration. Hence the first step is to start Ra原创 2015-01-30 16:38:06 · 1185 阅读 · 0 评论 -
JMS、AMQP实例讲解
使用Git从GitHub上将samples代码拷贝到本机,然后导入到IDE中Shell代码 git clone git://github.com/stephansun/samples.git samples包含7个模块,分别为samples-jms-plain:使用JMS原生API;samples-jms-spring:使用Sprin转载 2015-02-02 15:04:34 · 1743 阅读 · 0 评论 -
apache kafka监控系列-KafkaOffsetMonitor
概览最近kafka server消息服务上线了,基于jmx指标参数也写到zabbix中了,但总觉得缺少点什么东西,可视化可操作的界面。zabbix中数据比较分散,不能集中看整个集群情况。或者一个cluster中broker列表,自己写web-console比较耗时耗力,用原型工具画了一些管理界面东西,关键自己也不前端方面技术,这方面比较薄弱。这不开源社区提供了kafka的web管理平台Ka转载 2016-05-30 10:21:51 · 1099 阅读 · 0 评论 -
MS命名空间支持
转载 :http://www.iteedu.com/webtech/j2ee/spring25cn/ch19s04.phpSpring 2.5引入了XML命名空间以简化JMS的配置。使用JMS命名空间元素时,需要引用如下的JMS Schema:<beans xmlns="http://www.springframework.org/schema/beans" xmlns转载 2015-02-02 15:06:58 · 696 阅读 · 0 评论 -
rabbitmq 的命令使用
翻译: bobning 编译和安装 ubuntu或debian下的安装非常简单 # apt-get install rabbitmq-server 默认的数据库内容 当第一次启动服务,检测数据库是否未初始化或者被删除,它会用下面的资源初始化一个新的数据库: 一个命名为 / 的虚拟宿主一个名为guest密码也为guest的用户,他拥有/虚拟宿主的所有权限 如果你的中间转载 2015-02-02 11:54:19 · 848 阅读 · 0 评论 -
Ubuntu rabbitmq安装
Ubuntu rabbitmq安装原创 2014-08-21 11:07:12 · 2754 阅读 · 0 评论 -
什么是RabbitMQ?
RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然: 单向解耦 双向解耦(如:RPC) 例如一个日志系统,很容易使用RabbitMQ简化工作量,一个Consumer可以进行转载 2015-02-02 15:11:57 · 1626 阅读 · 0 评论 -
RabbitMQ 使用参考
安装基本概念基本形式持久化调度策略5.1. fanout5.2. direct5.3. topic5.4. headers分配策略状态反馈7.1. 信息发布的确认7.2. 消息提取的确认示例: 多消费者, 并行处理示例: 一条消息多种处理, 临时队列示例: 发布订阅, 多种形式的实现示例: 远程调用, 信息流方向与角色转换消息的BasicPropertiespika在Tor转载 2015-02-02 15:10:26 · 2012 阅读 · 0 评论 -
RabbitMQ学习之:(一)初识、概念及心得
因为网上有一篇很好的RMQ的入门帖子http://lostechies.com/derekgreer/tag/rabbitmq/,所以我就不多说了,就说说我目前看了该作者1~5章后,自己的心得。(所以要看懂我写的内容,需要看完那个作者写的1~5章。你可以先跳过这一篇,因为我后面的博文会依次分析该作者的文章的,等分析完1~5章,就可以回过头来看我写的这篇了)首先,装好RMQ,且激转载 2015-02-02 15:03:20 · 668 阅读 · 0 评论 -
RabbitMQ中 exchange、route、queue的关系
从AMQP协议可以看出,MessageQueue、Exchange和Binding构成了AMQP协议的核心,下面我们就围绕这三个主要组件 从应用使用的角度全面的介绍如何利用Rabbit MQ构建消息队列以及使用过程中的注意事项。 1. 声明MessageQueue 在Rabbit MQ中,无论是生产者发送消息还是消费转载 2015-02-02 14:58:41 · 1040 阅读 · 0 评论 -
rabbitmq在高可用HA方面的方案总结
为了提高消息传递交付的可用性,rabbitMQ有几种集群的方案,不同的方案有不同的优缺点1、普通的集群rabbitMQ中的exchange和queue都包含meta、contents、state等信息,exchange在集群中的每个节点都保存一份数据,但是queue不一样,queue在集群中对于contents只存储一份,其他节点只存储meta信息为什么只在一个节点存储queue的转载 2015-02-02 11:55:39 · 978 阅读 · 0 评论 -
RabbitMQ Consumer获取消息的两种方式(poll,subscribe)解析
rabbitMQ中consumer通过建立到queue的连接,创建channel对象,通过channel通道获取message,Consumer可以声明式的以API轮询poll的方式主动从queue的获取消息,也可以通过订阅的方式被动的从Queue中消费消息,最近翻阅了基于java的客户端的相关源码,简单做个分析。编程模型伪代码如下:ConnectionFactory factor转载 2015-02-02 11:56:33 · 4853 阅读 · 0 评论 -
rabbitmq——prefetch count
消费者在开启acknowledge的情况下,对接收到的消息可以根据业务的需要异步对消息进行确认。然而在实际使用过程中,由于消费者自身处理能力有限,从rabbitmq获取一定数量的消息后,希望rabbitmq不再将队列中的消息推送过来,当对消息处理完后(即对消息进行了ack,并且有能力处理更多的消息)再接收来自队列的消息。在这种场景下,我们可以通过设置basic.qos信令中的prefetc转载 2015-02-02 15:11:19 · 21274 阅读 · 1 评论 -
activeMq发送消息流程
activeMq发送消息流程原创 2014-09-28 10:26:04 · 4259 阅读 · 0 评论 -
activemq消息接收流程
activemq消息接收流程原创 2014-09-26 22:18:11 · 4569 阅读 · 0 评论 -
spring的RabbitTemplate 接收Message源码导读
spring的RabbitTemplate 接收Message源码导读原创 2014-09-25 23:29:51 · 10076 阅读 · 0 评论 -
mq博文汇总
http://blog.youkuaiyun.com/a759478257/article/details/8482281http://blog.youkuaiyun.com/azhao_dn/article/details/7664068http://blog.youkuaiyun.com/sunxinhere/article/details/7968886原创 2014-08-24 00:33:27 · 543 阅读 · 0 评论 -
消息队列软件产品大比拼
我花了一周的时间评估比较了一下各种消息队列产品,非常的有趣。我做这个事的动机是因为一个客户有一个很高性能需求。他们的消息信息突破了1百万个并发。目前他们使用的是SQLserver,并不理想,我建议他们使用消息队列服务器。为了对一些相似的候选产品获得一个全面的但是粗浅的性能上的了解,我们它们放在一起做了个测试。我让每个消息产品各发送和接受1百万千条1K的消息。测试准备的有些仓促,我并没有修改任何转载 2014-08-24 00:15:56 · 541 阅读 · 0 评论 -
KAFKA分布式消息系统
Kafka[1]是linkedin用于日志处理的分布式消息队列,linkedin的日志数据容量大,但对可靠性要求不高,其日志数据主要包括用户行为(登录、浏览、点击、分享、喜欢)以及系统运行日志(CPU、内存、磁盘、网络、系统及进程状态)。 当前很多的消息队列服务提供可靠交付保证,并默认是即时消费(不适合离线)。高可靠交付对linkedin的日志不是必须的,故可通过降低可靠性来提高性能,同时转载 2014-08-24 00:01:30 · 673 阅读 · 0 评论 -
A quick message queue benchmark: ActiveMQ, RabbitMQ, HornetQ, QPID, Apollo
转载:http://blog.x-aeon.com/2013/04/10/a-quick-message-queue-benchmark-activemq-rabbitmq-hornetq-qpid-apollo/转载 2014-09-19 17:08:49 · 1439 阅读 · 0 评论 -
ActiveMQ传输文件的几种方式原理与优劣
本文讨论ActiveMQ传输文件的几种方法的原理及其利弊,作为消息发送、直接传输文件、使用ftp或http中转。最后介绍扩展ActiveMQ实现自定义文件传输方式,讨论如何实现高效的文件传输。by kimmking作为消息发送按照JMS规范,为了保证可靠性,所有的消息都应该是发送到broker,然后交由broker来投递的。也即是说其实JMS是不建议或不支持传输文件的。对于比较小的文件转载 2014-09-20 09:34:05 · 1633 阅读 · 0 评论 -
消息队列软件产品大比拼
导读:本文是从《Message Queue Shootout!》这篇文章翻译而来,译文来自外刊IT评论《消息队列软件产品大比拼》。内容如下:我花了一周的时间评估比较了一下各种消息队列产品,非常的有趣。我做这个事的动机是因为一个客户有一个很高性能需求。他们的消息信息突破了1百万个并发。目前他们使用的是SQL server,并不理想,我建议他们使用消息队列服务器。为了对一些相似的候选产品获转载 2014-09-20 09:17:56 · 701 阅读 · 0 评论 -
spring rabbitTemplate消息DeliveryMode设置
在用spring和rabbitmq整合 对message的DeliveryMode的设置有两种方式一,在发送消息的时候设置DeliveryMode1,生产者调用rabbimqTemplate发送消息的时候,调用接口 public Message sendAndReceive(final String exchange, final String routingKey, final Me原创 2014-09-20 09:04:19 · 16844 阅读 · 0 评论 -
apollo性能数据
0.9K入队apollo1:520apollo1:680出队apollo1:160apollo1:180入库:600条,实际300多条原创 2014-09-18 17:57:59 · 2533 阅读 · 0 评论 -
rabbitmq 文章汇总
http://blog.youkuaiyun.com/witsmakemen/article/details/23168401http://blog.youkuaiyun.com/jljf_hh/article/details/17381425原创 2014-08-21 13:33:59 · 903 阅读 · 0 评论 -
Redis作为消息队列与RabbitMQ的性能对比
周末测试了一下RabbitMQ的性能,RabbitMQ是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正是如此,使的它变的非常重量级,更适合于企业级的开发。个人认为,在互联网开发中,使用消息队列,更多的因为在高并发环境下,由于来不及同步处理,请求会发生堵塞,所以我们需要一个队列服务来进行异步的处理,在这种场景下,只要队列服务满足最基本转载 2014-09-18 17:58:49 · 1816 阅读 · 0 评论 -
Rabbitmq 添加用户访控制台(guest无法登陆控制台问题)
Rabbitmq 添加用户访控制台原创 2014-08-21 12:48:59 · 4893 阅读 · 3 评论