Django Channels简明实践
2017-07-06 10:13
309 查看
1、安装,如果你已经安装django1.9+,那就不要用官方文档的安装指令了,把-U去掉,直接用:
sudo pip install channels
2、自定义的普通Channel的名称只能包含a-z A-Z 0-9 - _ 这些字母,这样就可以和内建Channel完全区别开,内建channel是带点号.的
3、其搭建真是非常简单,安装完成后,在setiings里面加两个地方,一是在Install apps配置处添加channels app如下:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
...
'channels',
)
再就是添加Channel_Layer配置:
# In settings.py
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgiref.inmemory.ChannelLayer",
"ROUTING": "myproject.routing.channel_routing",
},
}
然后配置好你自己的myproject.routing.channel_routing就ok了。
4、我目前这个项目使用channels做后端异步后台任务,很多WebSocket方面的group之类的特性基本用不到,不过Channels这个东西的逻辑实例只能支撑几千并发,所以我建议实时大数据量并发程序还是考虑Node.js或者Go,当然channels还是可以做一些需要WebSocket来实现的普通业务操作,毕竟它还是有一定优势的:和http服务的高整合度。
sudo pip install channels
2、自定义的普通Channel的名称只能包含a-z A-Z 0-9 - _ 这些字母,这样就可以和内建Channel完全区别开,内建channel是带点号.的
3、其搭建真是非常简单,安装完成后,在setiings里面加两个地方,一是在Install apps配置处添加channels app如下:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
...
'channels',
)
再就是添加Channel_Layer配置:
# In settings.py
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgiref.inmemory.ChannelLayer",
"ROUTING": "myproject.routing.channel_routing",
},
}
然后配置好你自己的myproject.routing.channel_routing就ok了。
4、我目前这个项目使用channels做后端异步后台任务,很多WebSocket方面的group之类的特性基本用不到,不过Channels这个东西的逻辑实例只能支撑几千并发,所以我建议实时大数据量并发程序还是考虑Node.js或者Go,当然channels还是可以做一些需要WebSocket来实现的普通业务操作,毕竟它还是有一定优势的:和http服务的高整合度。
相关文章推荐
- Django Channels简明实践
- Django单元测试简明实践
- Django单元测试简明实践
- 代码干货 | 号称最为简明实用的Django上手教程(下)
- DjangoRestFramework实践笔记
- Spring Security简明实践及相关国际化处理
- 实践 Django 的 i18n(国际化)
- Django最佳实践(中文版)
- 使用South对Django项目的数据库进行迁移的简明教程
- 【day 12】python编程:从入门到实践学习笔记-基于Django框架的Web开发-Django入门(三)
- Django Channels 实时在线用户列表
- 【秒懂】号称最为简明实用的Django上手教程(下)
- Django Signals 从实践到源码分析
- 技术文章 | 号称简明实用的Django上手教程
- 【Python】Django Channels2.0 使用
- Django入门实践(三)
- Python web入门:Django学习与实践二(简单页面实现和创建一个模板)
- django最佳实践
- django入门与实践
- 基于SAE的Python+Django的入门实践