前言
-
準備做一個web視頻聊天,這兩天學習了django channels實現websocket,之後再學習webrtc。
-
看了些django channels的博客教程搭建簡單的聊天室,只能說走了不少彎路,因爲我看的兩個人的都不全,一個缺少必要的模塊,一個還使用母版,我只是想熟悉下流程啊,用的着這麼複雜嗎?
-
這纔跟着官網文檔走了一遍,早跟着官網就好了。
-
於是,就來到了channels文檔一筆帶過的redis服務,現在總算是摸清楚Windows下的redis服務與django如何結合。
下載Windows的redis數據庫
這篇文章真的足夠詳細了。
redis下載教程for Windows
關於redis服務的啓動關閉
總結如下:
教程上說在 redis.windows-service.conf 文件的
#requirepass foobared ,下面加一行
requirepass 123456 , 的確可以設置密碼。
重啓纔會讀取配置文件,才能生效
今後開啓redis服務用 redis-server --service-start
今後關閉redis服務用 redis-server --service-stop
(在文件所在目錄按shift+右鍵開啓powershell輸入命令)
不用了就關掉吧,我也不知道一直開啓好不好。
記住密碼一定要和配置文件裏一樣。
django配置redis
因爲文檔使用的是默認配置,還有更通用的形式。
django-channels channel_layer redis配置
首先在settings.py裏連接redis
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
# redis默認是6379端口,第0的數據庫,這裏我們選擇第5個數據庫,123456是密碼
'LOCATION': 'redis://:[email protected]:6379/5',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis.client.DefaultClient',
}
}
}
然後按照第三種設過密碼的方法配置CHANNEL_LAYERS
CHANNEL_LAYERS = {
"default": {
"BACKEND": "channels_redis.core.RedisChannelLayer",
"CONFIG": {
"hosts": ["redis://:[email protected]:6379/5"],
"symmetric_encryption_keys": [SECRET_KEY],
},
},
}
django channels正常工作。