码迷,mamicode.com
首页 > 编程语言 > 详细

译: 1. RabbitMQ Spring AMQP 之 Hello World

时间:2018-10-11 19:01:08      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:压缩   图片   协议   这一   一个队列   消息流   nbsp   src   意义   

本文是译文,原文请访问:http://www.rabbitmq.com/tutorials/tutorial-one-spring-amqp.html

RabbitMQ 是一个Brocker (消息队列服务器),它接受和转发消息 .

你可以将它当做邮局:

当你将要发布的邮件放在邮箱中时,您可以确定邮件先生或Mailperson女士最终会将邮件发送给您的收件人。在这个比喻中,RabbitMQ是邮箱,邮局和邮递员。

RabbitMQ和邮局之间的主要区别在于它不处理信纸,而是接受,存储和转发二进制大对象  blob(binary large object )数据 ——消息

RabbitMQ和一般的消息传递使用了一些术语

1. 生产者

生产者仅仅只是发送。一个发送消息的程序就是生产者:

技术分享图片

2. 队列

队列是RabbitMQ中的邮箱的名称。虽然消息流经RabbitMQ和您的应用程序,但它们只能存储在队列中队列仅由主机的存储器和磁盘限制约束,它本质上是一个大的消息缓冲器。

许多生产者可以发送到一个队列的消息,并且许多消费者可以尝试从一个队列接收数据这就是我们代表队列的方式:

 技术分享图片

3. 消费者

消费这与生产者有类似的意义。一个消费者是一个程序,主要是等待接收信息:

技术分享图片

请注意,生产者,消费者和代理不必驻留在同一主机上; 实际上在大多数应用中他们没有。应用程序既可以是生产者也可以是消费者。

"Hello World"

(使用 spring-amqp client)

在本教程的这一部分中,我们将使用spring-amqp库编写两个程序; 发送单个消息的生产者,以及接收消息并将其打印出来的消费者。

我们将掩盖Spring-amqp API中的一些细节,专注于这个非常简单的事情才开始。它是消息传递的“Hello World”。

在下图中,“P”是我们的生产者,“C”是我们的消费者。中间的框是一个队列 - RabbitMQ代表消费者保留的消息缓冲区。

技术分享图片

Spring AMQP框架

RabbitMQ说多种协议。本教程使用AMQP 0-9-1,它是一种开放的,通用的消息传递协议。RabbitMQ有许多不同语言的客户端 

 Spring AMQP利用Spring Boot进行配置和依赖管理。Spring支持maven或gradle,但在本教程中,我们将选择带有Spring Boot 1.5.2的maven

打开 http://start.spring.io/   

提供: 

  •  group id (列如: org.springframework.amqp.tutorials)
  •  artifact id (e.g. rabbitmq-amqp-tutorials)
  • 搜索 RabbitMQ依赖,然后选择 RabbitMQ 依赖 

生成项目并将生成的项目解压缩到您选择的位置。

现在可以将其导入您喜欢的IDE中。或者,您可以从您喜欢的编辑器处理它。

 

译: 1. RabbitMQ Spring AMQP 之 Hello World

标签:压缩   图片   协议   这一   一个队列   消息流   nbsp   src   意义   

原文地址:https://www.cnblogs.com/xingyunblog/p/9773525.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!