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
Release history Release notifications | RSS feed
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
Close
Hashes for sanic_amqp-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 790792577c82f2dc4e0ddad598222c1373f2a4cadd072fd47ba98e8abe80c738 |
|
MD5 | 3a5d553092c7fc86c4e024221f0cd39f |
|
BLAKE2b-256 | af4c5a830c324fe033fed8dae5e935c28f3e92ad6b9612ba9d04ec326b5f718e |