Websocket support for Django using Redis as datastore
Project description
Project home: https://github.com/jrief/django-websocket-redis
Detailed documentation on [ReadTheDocs](http://django-websocket-redis.readthedocs.org/en/latest/).
Websockets for Django using Redis as message queue
This module implements websockets on top of Django without requiring any additional framework. For messaging it uses the [Redis](http://redis.io/) datastore and in a production environment, it is intended to work under [uWSGI](http://projects.unbit.it/uwsgi/) and behind [NGiNX](http://nginx.com/).
New in 0.4.2
Message echoing can be switched “on” and “off” according to the user needs. Before it was “on” by default.
Many changes to become compatible with Python3; there are still minor issues to solve.
The message string to be passed and stored to and from the websocket hase been converted into a class RedisMessage for type saftey.
Features
Largely scalable for Django applications with hundreds of open websocket connections.
Runs in a cooperative concurrency model using [gevent](http://www.gevent.org/), thus only one thread/process is simultaneously required to control all open websockets.
Full control over the main loop during development, so Django can be started as usual with ./manage.py runserver.
No dependency to any other asynchronous event driven framework, such as Tornado, Twisted or Node.js.
Optionally persiting messages, allowing server reboots and client reconnections.
The only additional requirement is a running instance of Redis, which by the way is a good replacement for memcached.
If unsure, if this proposed architecture is the correct approach on how to integrate websockets with Django, then please read Roberto De Ioris article about [Offloading Websockets and Server-Sent Events AKA “Combine them with Django safely”](http://uwsgi-docs.readthedocs.org/en/latest/articles/OffloadingWebsocketsAndSSE.html).
Build status
[![Build Status](https://travis-ci.org/jrief/django-websocket-redis.png?branch=master)](https://travis-ci.org/jrief/django-websocket-redis)
Questions
Please use the issue tracker to ask questions.
License
Copyright © 2014 Jacob Rief. Licensed under the MIT 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 Distribution
Hashes for django-websocket-redis-0.4.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0403b4c18c164ab8c0070937981b1be75d173860efd21ada1f9434d807149bd4 |
|
MD5 | 5428e8c19046bc908fbb2a49ea8f58ab |
|
BLAKE2b-256 | ece61c9ae06110bce4cae674c87e49227808399570ca623339085d3d06bb029f |