amqp091-go:基于 AMQP 0.9.1 协议的 Go 客户端库项目

An AMQP 0-9-1 Go client maintained by the RabbitMQ team. Originally by @streadway: `streadway/amqp`

分支8Tags21
文件最后提交记录最后更新时间
3 个月前
23 天前
2 个月前
1 个月前
3 年前
2 年前
3 个月前
5 个月前
12 天前
24 天前
5 年前
3 个月前
5 年前
3 个月前
2 个月前
3 年前
1 年前
2 年前
2 个月前
2 个月前
3 年前
3 年前
27 天前
1 个月前
1 个月前
2 个月前
2 个月前
12 天前
1 个月前
27 天前
1 个月前
1 个月前
1 年前
1 年前
2 年前
2 年前
5 个月前
1 个月前
2 年前
7 年前
2 年前
2 年前
1 个月前
1 个月前
5 个月前
1 个月前
1 个月前
1 个月前
1 个月前
25 天前
5 个月前
4 年前
2 年前
1 个月前
1 个月前
5 个月前
2 个月前
2 个月前
2 个月前
2 个月前

Go RabbitMQ 客户端库

amqp091-go Go 参考文档 Go 报告卡

这是一个由 RabbitMQ 核心团队 维护的 Go AMQP 0.9.1 客户端。 它最初由 Sean Treadway 开发,代码位于 streadway/amqp

与 streadway/amqp 的区别

与原始客户端相比,有些地方有所不同,其他则保持不变。

包名

本库使用不同的包名。如果从 streadway/amqp 迁移过来,使用别名可以减少所需的更改数量:

amqp "github.com/rabbitmq/amqp091-go"

许可协议

本客户端采用与原始项目相同的 2 条款 BSD 许可协议。

公共 API 演进

本客户端会尽可能保留关键的 API 元素。 不过,我们也愿意接受社区提出的合理的、不兼容的公共 API 变更建议。 我们没有“永远不进行破坏性公共 API 变更”的规则,并充分认识到良好的客户端 API 会随着时间不断演进。

项目成熟度

本项目基于一个已存在超过十年的成熟 Go 客户端。

支持的 Go 版本

本客户端支持两个最新的 Go 发布系列。

支持的 RabbitMQ 版本

本项目支持从 2.0 开始的 RabbitMQ 版本,但主要针对当前受支持的 RabbitMQ 发布系列进行测试。

某些功能和行为可能特定于服务器版本。

目标

提供一个功能接口,该接口紧密反映 AMQP 0.9.1 模型,并以 RabbitMQ 作为服务器为目标。这包括与协议语义交互所需的最基本功能。

非目标

不打算支持的事项。

  • 用于向前或向后兼容的 AMQP 协议协商。
    • 0.9.1 版本稳定且已广泛部署。AMQP 1.0 是一个不同的规范(一种不同的协议),应属于另一个库。
    • PLAIN 和 EXTERNAL 身份验证机制以外的任何机制。
      • 保持机制接口的模块化,使其可以在本包之外进行扩展。如果其他机制被证明很受欢迎,我们将接受补丁以将它们包含在本包中。
    • 支持 basic.returnbasic.ack 帧的顺序。 此客户端使用 Go 通道处理某些协议事件,发送到两个不同通道的事件之间的顺序通常无法保证。

用法

有关简单的生产者和消费者可执行文件,请参见 _examples 子目录。 如果您有一个用例未在示例中得到充分体现,请提交 issue。

文档

贡献

非常欢迎提交拉取请求。请在非 main 分支上创建拉取请求,确保包含能覆盖您所做更改的测试或示例,并且提交的内容应是连贯的变更,其中需说明变更原因。

更多信息请参见 CONTRIBUTING.md

许可证

BSD 2 条款,详情参见 LICENSE。

项目介绍

一个由RabbitMQ团队维护的AMQP 0-9-1 Go语言客户端。最初由@streadway创建:`streadway/amqp`。【此简介由AI生成】

定制我的领域
292.03 K169访问 GitHub