用trio实现amqp
trio_amqp的Python项目详细描述
三个AMQP
trio-amqp库是AMQP 0.9.1 protocol的纯python实现。
它构建在Trio之上,提供了一个基于协程的api,使得编写高度并发的应用程序变得容易。
欢迎使用错误报告、补丁和建议!打开一个issue或发送一个pull request。
状态
代码有效。移植使用aioamqp(甚至是普通的)的代码 python amqp)应该相当简单。
来自aioamqp的所有测试都已移植并成功。
测试
要运行测试,您需要安装python测试依赖项:
pip install -r ci/requirements_dev.txt
测试需要rabbitmq的实例。您可以使用Docker启动一个新实例:
docker run -d --log-driver=syslog -e RABBITMQ_NODENAME=my-rabbit --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3-management
然后可以使用make test(需要pytest)运行测试。
未来工作
- 添加覆盖率报告。增加覆盖范围(duh)。
- 尝试重新启动失败的AMQP连接,而不是取消所有连接。