
RabbitMQ
文章平均质量分 87
yimeng528
这个作者很懒,什么都没留下…
展开
-
rabbitmq学习1:hello world
rabbitMQ是一个在AMQP基础上完整的,可服用的企业消息系统。他遵循Mozilla Public License 开源协议。 关于amqp可参考http://www.oschina.net/p/rabbitmq/ rabbitmq是一个消费的代理;通过生产者客户端生产一个信息,转送给消费者客户端;在这个传输过程中,根据你的需要可以经过路由、缓冲、持久化来得到这个消息。 先通...原创 2013-12-10 10:16:41 · 114 阅读 · 0 评论 -
rabbitmq学习9:使用spring-amqp发送消息及同步接收消息
通过对spring-amqp看重要类的认识,下面来通过spring-amqp的发送消息及同步接收消息是如何实现的。有兴趣的朋友 可以去spring-amqp官网下载例子。 先来看看HelloWorldConfiguration类Java代码 package org.springframework.amqp.helloworld; import ...原创 2013-12-26 14:57:40 · 242 阅读 · 0 评论 -
rabbitmq学习8:spring-amqp的重要类的认识
对于大多数应用来说都做了与spring整合,对于rabbitmq来说。也有与spring的整合。可能通过spring的官网找到spring-amqp项目下载。spring-amqp项目包括三个子项目:spring-amqp、spring-erlang、spring-rabbit. 下面来认识一下spring-amqp中的几个重要类;以spring-amqp-1.0.0.M3版本为例...原创 2013-12-26 14:57:25 · 115 阅读 · 0 评论 -
rabbitmq学习7:ConntectionFactory与Conntection的认知
从前面几小节的学习,我们可能知道在发送和接收消息重要的类ConnectionFactory, Connection,Channel和QueueingConsumer。 ConntectionFactory类是方便创建与AMQP代理相关联的Connection;下面来看看ConntectionFactory是如何创建一个Contention. 首先通过new ConnectionFa...原创 2013-12-26 14:57:10 · 129 阅读 · 0 评论 -
rabbitmq学习6:RPC
在《rabbitmq学习2:Work Queues 》中我们已经知道了在多个worker如何分配耗时的任务。如果我现在要在远程的机器上运行然后得到结果,那应当怎么做呢?那就要用到RPC(Remote Procedure Call or RPC )了! 关于RPC的介绍请参考百度百科里的关于RPC的介绍:http://baike.baidu.com/view/32726.htm#su...原创 2013-12-26 14:56:46 · 87 阅读 · 0 评论 -
JMS、AMQP实例讲解
使用Git从GitHub上将samples代码拷贝到本机,然后导入到IDE中Shell代码 git clone git://github.com/stephansun/samples.git git clone git://github.com/stephansun/samples.gitsamples包含7个模块,分别为sample...原创 2013-02-23 20:27:00 · 149 阅读 · 0 评论 -
RabbitMQ概念导论
1 什么是RabbitMQ? RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然:[img]http://dl.iteye.com/upload/attachment/0075/133...原创 2013-02-22 09:44:53 · 136 阅读 · 0 评论 -
AMQP和RabbitMQ入门
http://www.infoq.com/cn/articles/AMQP-RabbitMQ准备开始高级消息队列协议(AMQP1)是一个异步消息传递所使用的应用层协议规范。作为线路层协议,而不是API(例如JMS2),AMQP客户端能够无视消息的来源任意发送和接受信息。现在,已经有相当一部分不同平台的服务器3和客户端可以投入使用4。相关厂商内容IBM 360°讲师团招募:每...原创 2013-02-21 09:28:37 · 145 阅读 · 0 评论 -
rabbitmq学习5:Topics
在前面的《rabbitmq学习4:Routing 》中使用一般的名字的路由,现在想通过一些路由规则让消费者来接受符合规则的消息?那应当怎么样呢?那就要用到类型为topic的Exchange了。Topics的工作示意图如下:我们可能从图中看到有*和#两个通配符。*表示通配一个词;#表示通配0个或多个词。下面让我们来看看Topics的程序如何实现的吧!P端的程序如下 :...原创 2013-12-10 10:21:42 · 92 阅读 · 0 评论 -
rabbitmq学习4:Routing
在《rabbitmq学习3:Publish/Subscribe 》中已经学习了发送一个消息,所有消费者端都能收到。那现在这节准备介绍通过路由规则来接受生产者端所发送的消费。Routing的工作示意图如下:对于Routing的示意图与Publish/Subscribe中的示意图区别:第一:Publish/Subscribe的Exchange的类型为“fanout”,而Rout...原创 2013-12-10 10:20:57 · 126 阅读 · 0 评论 -
rabbitmq学习3:Publish/Subscribe
在前面的Work Queue中的消息是均匀分配消息给消费者;如果我想把消息分发给所有的消费者呢?那应当怎么操作呢?这就是要下面提到的Publish/Subscribe(分布/订阅)。让我们开始Publish/Subscribe之旅吧!Publish/Subscribe的工作示意图如下:在上图中的X表示Exchange(交换区);Exchange的类型有:direct , topi...原创 2013-12-10 10:19:09 · 103 阅读 · 0 评论 -
rabbitmq学习2:Work Queues
在前面的已经提到了一对一的情况;现在一个生产者与多个消费者的情况(Work Queues)。Work Queues的示意图如下: 对于上图的模型中对于c端的worker来说。RabbitMQ服务器可能一直发送多个消息给一个worker,而另一个可能几乎不做任何事情。这样就会导致一个worker很忙,而另一个却很空闲。这种情况可能都不想出现。如何解决这个问题呢。当然最理想的情况是均匀分...原创 2013-12-10 10:17:55 · 91 阅读 · 0 评论 -
rabbitmq学习10:使用spring-amqp发送消息及异步接收消息
前面我们已经学习了发送消息及同步接收消息的例子了。下面我们来看看如何通过Spring配置来实现异步接收消息。 现在我们建立两个WEB项目。发送消息的项目命名为”rabbitmq-demo-producer“ ,异步接受的消息项目名称”rabbitmq-demo-consumer“。 下面来看看rabbitmq-demo-producer项目中发送信息的程序及配置。 Messa...原创 2013-12-26 14:58:09 · 217 阅读 · 0 评论