ASGI implemented as a Twisted resource
Project description
txasgiresource is ASGI implemented as a Twisted Web Resource, very similar to WSGIResource.
This is inspired by Daphne but largely implemented from specs.
It can also run as a daemon with or without the actual application embedded inside.
The code is available on GitHub
Usage
As Twisted Resource
from twisted.web import server
from yourdjangoproject.asgi import channel_layer
resource = ASGIResource(channel_layer)
site = server.Site(resource)
# If we are done with the resource, make sure to stop it.
resource.stop()
As ASGI Protocol server
twistd -n txasgi -c yourdjangoproject.asgi:channel_layer
As ASGI Protocol server with embedded workers
twistd -n txasgi -c yourdjangoproject.asgi:channel_layer -w 6
As ASGI Protocol server with embedded workers and on a different port and ip
twistd -n txasgi -c yourdjangoproject.asgi:channel_layer -w 6 -d tcp:5566:interface=0.0.0.0
Scheduler
The scheduler is built around apscheduler and directly maps to the three schedule-types:
Schedule a job
Channel('schedule').send({
'method': 'add',
'id': 'some_unique_job_id',
'reply_channel': 'schedule.time_to_run',
'reply_args': {'some', 'reply'},
'trigger': 'date',
'run_date': '2009-11-06 16:30:05',
})
Setup channel for the reply
channel_routing = {
'schedule.time_to_run': 'myapp.consumers.my_consumer',
}
Cancel the job
Channel('schedule').send({
'method': 'remove',
'id': 'some_unique_job_id',
})
Status
Master branch
Develop branch
License
MIT, see LICENSE
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 txasgiresource-0.2.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53bdbb723aee30b82a3768a1f3adedd89fbe6da1d405920b473920d77635d60f |
|
MD5 | 7af23ec3f227bb1167605623a9f31160 |
|
BLAKE2b-256 | 58c7b43f88abc5f4d770cabf85901910dd95d1bc65a143e59947b8ec9a6051d2 |