写点什么

Spring AMQP 1.0 GA 发布了

  • 2012-02-05
  • 本文字数:1491 字

    阅读完需:约 5 分钟

近日,SpringSource(VMware 下的一个部门)发布 Spring AMQP 1.0 GA(1.0.0.RELEASE)。Spring AMQP 项目将 Spring 核心概念应用到了基于 AMQP 的消息解决方案的开发上,并且提供了 Java 与.NET 两个版本。要想了解 Spring AMQP 与 AMQP,请阅读文章“ Introduction to SpringSource’s Advanced Message Queuing Protocol Support ”。

Spring AMQP 提供了 org.springframework.amqp.core.AmqpTemplate 来发送与接收消息。AMQP 模板实现支持发送与接收 POJOs 而非 javax.jms.Message 实例。他们还提供了一种方式来自定义用于编排对象的 MessageConverter。Spring 与 JMS 用户会发现 JmsTemplate 与新的 AmqpTemplate 之间的相似性。

下面的代码片段介绍了如何联合使用 Spring AMQP 与 RabbitMQ 处理同步消息。 RabbitMQ 是 VMware 的产品,并且是官方 Spring AMQP 示例中所用的默认 AMQP 实现。

复制代码
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xsi:schemaLocation="http://www.springframework.org/schema/rabbit
http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<rabbit:connection-factory id="connectionFactory"/>
<rabbit:template id="amqpTemplate" connection-factory="connectionFactory"/>
<rabbit:admin connection-factory="connectionFactory"/>
<rabbit:queue name="helloworld.queue"/>
</beans>

上述 Spring 配置 xml 引用了 ConnectionFactory,创建了一个 RabbitTemplate 来访问消息 broker,创建了一个 RabbitAdmin 来管理交换、查询与绑定,最后创建了队列。下面的 Java 代码片段用于发送与接收消息。

复制代码
Producer.java
import org.springframework.amqp.core.AmqpTemplate;
...
AmqpTemplate amqpTemplate = context.getBean(AmqpTemplate.class);
amqpTemplate.convertAndSend("helloworld.queue", "Hello World");
复制代码
Consumer.java
import org.springframework.amqp.core.AmqpTemplate;
...
AmqpTemplate amqpTemplate = context.getBean(AmqpTemplate.class);
System.out.println(amqpTemplate.receiveAndConvert("helloworld.queue"));

要想上手,请下载 Spring AMQP for Java 或是 Spring AMQP for .NET 。Spring AMQP for Java artifacts 也位于 SpringSource Maven 仓库与 Maven Central 中。其依赖是 spring-amqp、spring-core 与 spring-context。如果消息 broker 使用的是 RabbitMQ,那么还要引入 spring-rabbit。你还可以试一下位于 GitHub 上的 Spring AMQP 示例。这些示例都是基于 Maven 的项目,需要用到 RabbitMQ 与 Erlang 。请阅读与示例代码一同发布的 readme.md 文件以了解完整的构建命令。

对于 Cloud Foundry 用户来说,VMware 还发布了RabbitMQ on Cloud Foundry 免费的公开Beta 版。你可以使用AMQP 连接RabbitMQ on Cloud Foundry,通过这些示例可以帮助你快速上手。对于Spring Integration 用户来说,版本2.1 M1 提供了AMQP 支持。

除了VMware 的RabbitMQ 外,其他基于AMQP 面向消息的中间件还有 Apache Qpid Red Hat Enterprise MRG StormMQ (托管)。iMatrix 的 OpenAMQ 已经不再支持了,因此也没有成为一个选择。

要想了解关于 Spring AMQP 的更多信息,请查看 Spring AMQP Reference for Java Spring AMQP Reference for .NET 参考页面。

查看英文原文: Spring AMQP 1.0 GA

2012-02-05 23:434085
用户头像

发布了 88 篇内容, 共 273.6 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

火山引擎数据飞轮模式下的线上营销:内容产出更智能、人群触达更精准

字节跳动数据平台

大模型 数据飞轮

HyperWorks使用六面体和三棱柱单元进行实体网格剖分

智造软件

CAE软件 Hypermesh hyperworks

脑机接口、嵌入式 AI 、工业级 MR、空间视频和下一代 XR 浏览器丨RTE2024 空间计算和新硬件专场回顾

RTE开发者社区

Domino 流计算快速上手 - 1. 扩维

YMatrix 超融合数据库

数据库 数据仓库 YMatrix

大数据行业数据多样性体现在哪里?用堡垒机可以保障大数据安全吗?

行云管家

大数据 数据安全 数据运维

GitLab 升级如何查看升级路径?

极狐GitLab

申请亚马逊商品详情API需要多少钱

代码忍者

API 接口 API 测试 pinduoduo API

缓存之美——如何选择合适的本地缓存?

京东科技开发者

云真机测试

测试人

软件测试

探索微店API接口:如何获取并解析商品详情数据的Json格式指南

代码忍者

API 接口 pinduoduo API

字节豆包发布新模型,AI 一句话 P 图;Google 正式推出 Vids,简单提示即可生成视频演示丨 RTE 开发者日报

RTE开发者社区

速卖通商品详情API实战应用:调用实例与解析

代码忍者

API 接口 pinduoduo API

软件项目中的合作伙伴和供应商:应对挑战的策略

易成研发中心

项目管理 程序员 软件项目管理

通义×Milvus:手把手教你打造专属AI技术顾问

Zilliz

AI Milvus 通义

B端体验深耕-洞察用户需求,打造心有灵犀的使用体验

京东科技开发者

Redis 实现高效任务队列:异步队列与延迟队列详解

左诗右码

从0到1的突破,用户如何借助我们的软件实现企业增长?

天津汇柏科技有限公司

低代码 企业

数据湖系列之四 | 数据湖存储加速方案的发展和对比分析

Baidu AICLOUD

分布式缓存 数据湖加速 云原生文件系统

万界星空科技轮胎行业MES系统数字化解决方案

万界星空科技

mes 万界星空科技mes 汽车轮胎行业 轮胎mes

常德等保测评机构有哪些?电话多少?

行云管家

等保 等保测评 常德

Java定时任务大盘点:发工资也能“指日可待”

京东科技开发者

云消息队列 Kafka 版全面升级:经济、弹性、稳定,成本比自建最多降低 82%

阿里巴巴云原生

kafka 阿里云 云原生

【CAP评测有奖】邀您共探 AI 应用开发新趋势,赢取多重好礼!

阿里巴巴云原生

阿里云 云原生 CAP

Spring AMQP 1.0 GA发布了_Java_Bienvenido David_InfoQ精选文章