Skip to main content

RabbitMQ app framework

Project description

RabbitBus

Feel RabbitMQ like HTTP

  • Custom CorrelationManagers
  • Regexp roures

Installation

RabbitBus requires Python 3.6 >, aioamqp.

Install the dependencies and library.

$ pip install rabbitbus

Example:

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

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
ch.setFormatter(formatter)
logger.addHandler(ch)

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

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, as_list=True)
    app.start(loop)


if __name__ == '__main__':
    serve()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rabbitbus-0.0.6.tar.gz (5.6 kB view hashes)

Uploaded Source

Built Distribution

rabbitbus-0.0.6-py3-none-any.whl (5.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page