Skip to main content

RabbitMQ 应用程序框架

项目描述

PyPI - Python 版本 构建状态

兔子巴士

感觉 RabbitMQ 像 HTTP

  • 自定义 CorrelationManager
  • 正则表达式路线

安装

RabbitBus 需要 Python 3.6 >,aioamqp。

安装依赖项和库。

$ pip install rabbitbus

例子:

import asyncio
from rabbitbus.manager import DatabusApp, Configuration
from rabbitbus.acks.requests import AmqpRequest
from rabbitbus.acks.responses import AckResponse

async def my_view(request: AmqpRequest):
    # Write your code here
    return AckResponse(request)

def serve():
    loop = asyncio.get_event_loop()
    # Inherit from CorrelationManager for custom correlation storages
    app = DatabusApp(conf=Configuration())
    app.add_route(r'^CASH_REGISTER_EQUIPMENTS[a-zA-Z_]{4}$', my_view)
    app.start(loop)


if __name__ == '__main__':
    serve()

如果消息具有 reply_to 属性,您可以做出如下响应

from rabbitbus.acks.requests import AmqpRequest
from rabbitbus.acks.responses import AckResponse

async def my_view(request: AmqpRequest):
    # Write your code here
    return AckResponse(request, data={"result": 1})

“reply_to”将转换为“routing_key”,消息将发布到应用程序交换。有关 RPC 的更多信息,您可以在 RabbitMQ 文档中阅读

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

rabbitbus-0.1.1.tar.gz (6.4 kB 查看哈希)

已上传 source