django命令使用pulsar异步框架服务站点
pulsar-django的Python项目详细描述
异步django
Badges: | |
---|---|
CI: | |
Documentation: | https://github.com/quantmind/pulsar-django |
Downloads: | http://pypi.python.org/pypi/pulsar-django |
Source: | https://github.com/quantmind/pulsar-django |
Keywords: | asynchronous, django, wsgi, websocket, redis |
脉冲模块是一个django应用程序 用于运行带有pulsar的django网站。 将其添加到您的INSTALLED_APPS:
INSTALLED_APPS=(...,'pulse',...)
并通过pulse命令运行站点:
python manage.py pulse
查看django聊天示例djchat以获取django聊天 由多处理脉冲星服务器提供服务的应用程序。
默认情况下,pulse命令创建一个Wsgi中间件 在单独的执行线程中运行django应用程序 主事件循环。 这是一个标准的编程模式,当使用asyncio和blocking时 功能。 控制事件循环执行器中的线程工作线程数 是一个线程池)使用 thread-workers选项。例如, 以下命令:
python manage.py pulse -w 4 --thread-workers 20
将运行四个基于进程的参与者,每个参与者 最多有20个线程的执行器。
绿叶菜
可以在完全异步模式下运行django,即 在事件循环执行器中运行中间件。 目前,这在使用PostgreSQL后端时可用 只是,它需要greenlet库。
使用greenlet支持运行django:
python manage.py pulse -w 4 --greenlet
默认情况下,它将在100个greenlet的池中运行django中间件(并且 因此每个演员大约有100个独立的数据库连接。到 调整此数字:
python manage.py pulse -w 4 --greenlet 200
django聊天示例
这是一个web聊天应用程序,演示了如何运行django pulsar站点及如何包含pulsar异步请求中间件 进入Django。
运行:
python manage.py pulse
如果是首次运行,请发出:
python manage.py migrate
命令并创建超级用户:
python manage.py createsuperuser
消息和数据后端
默认情况下,来自已连接(WebSocket)客户端的消息通过 脉冲星数据存储,当django 站点启动。
可以通过 data-store选项。例如,有可能 使用redis作为替代数据存储 通过发出以下启动命令:
python manage.py pulse --data-store redis://127.0.0.1:6379/3