Skip to main content

AMQP support for Sanic framework

Project description

Forked from and based on https://github.com/Relrin/sanic-amqp-extension (sanic-amqp-extension) Extensions were forked and modified to keep the code updated with the latest version of dependecnies and to add additional functionality

sanic-amqp

AMQP support for Sanic framework

Features

  • Based on the aioamqp library

  • Provides an opportunity to implement workers that works in background

Installation

This package should be installed using pip:

pip install sanic-amqp

Example

from sanic import Sanic, response
from sanic_amqp import AmqpExtension, AmqpWorker


app = Sanic(__name__)
# Configuration for RabbitMQ
app.config.update({
    "AMQP_USERNAME": "guest",
    "AMQP_PASSWORD": "guest",
    "AMQP_HOST": "localhost",
    "AMQP_PORT": 5672,
    "AMQP_VIRTUAL_HOST": "vhost",
    "AMQP_USING_SSL": False,
})
AmqpExtension(app) # AMQP is available as `app.amqp` or `app.extensions['amqp']`


class CustomWorker(AmqpWorker):

    async def run(self, *args, **kwargs):
        transport, protocol = await self.connect()  # create a new connection
        # and do some stuff here ...

# Register workers after initializing the extension
app.amqp.register_worker(CustomWorker(app))


@app.route("/")
async def handle(request):
    transport, protocol = await request.app.amqp.connect()  # create a new connection
    # do some stuff here ...
    # P.S. but don't forget to close the connection after using
    return response.text("It's works!")

License

The sanic-amqp is published under BSD license. For more details read LICENSE file.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sanic_amqp-0.2.0-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file sanic_amqp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: sanic_amqp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.6

File hashes

Hashes for sanic_amqp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 790792577c82f2dc4e0ddad598222c1373f2a4cadd072fd47ba98e8abe80c738
MD5 3a5d553092c7fc86c4e024221f0cd39f
BLAKE2b-256 af4c5a830c324fe033fed8dae5e935c28f3e92ad6b9612ba9d04ec326b5f718e

See more details on using hashes here.

Supported by

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