第 14 章 互操作性
本章讨论了如何将 AMQ Python 与其他 AMQ 组件结合使用。有关 AMQ 组件的兼容性概述,请参阅 产品简介。
14.1. 与其他 AMQP 客户端交互
AMQP 消息使用 AMQP 类型系统 组成。这种通用格式是以不同语言的 AMQP 客户端能够相互互操作的原因之一。
发送消息时,AMQ Python 会自动将语言原生类型转换为 AMQP 编码的数据。收到信息时,反向转换就发生。
有关 AMQP 类型的更多信息,请访问由 Apache Qpid 项目维护 的交互式类型参考。
AMQP 类型 | 描述 |
---|---|
一个空值 | |
true 或 false 值 | |
单个 Unicode 字符 | |
一系列 Unicode 字符 | |
一个字节序列 | |
签名的 8 位整数 | |
签名的 16 位整数 | |
签名的 32 位整数 | |
签名的 64 位整数 | |
未签名的 8 位整数 | |
未签名的 16 位整数 | |
未签名的 32 位整数 | |
未签名的 64 位整数 | |
32 位浮点号 | |
64 位浮点号 | |
单个类型的值的序列 | |
变量类型的序列值 | |
从不同键到值的映射 | |
通用唯一标识符 | |
来自受限域的 7 位 ASCII 字符串 | |
一个绝对时间点 |
AMQP 类型 | 编码前的 AMQ Python 类型 | 解码后 AMQ Python 类型 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
编码前的 AMQ Python 类型 | AMQ C++ 类型 | AMQ JavaScript 类型 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
编码前的 AMQ Python 类型 | AMQ .NET 类型 | AMQ Ruby 类型 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| - |
|
|
|
|
|
|
|
|
| - |
|
|
|
|
|
|