V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
myung
V2EX  ›  Django

Django channels 服务器部署 应该怎么搞?

  •  
  •   myung · Jun 17, 2018 · 7286 views
    This topic created in 2876 days ago, the information mentioned may be changed or developed.

    原来没加 channels 的时候 是 django+ nginx +uwsgi 搞的。。。现在加了个 channels 实时聊天,,,不知道该怎么部署了。

    求指点~~

    8 replies    2020-12-17 16:29:39 +08:00
    MES
        2
    MES  
       Jun 17, 2018
    两个端口,channel 启一个,django 启一个
    ericls
        3
    ericls  
       Jun 17, 2018 via iPhone
    daphne 就够了 如果要 scale 直接启动多个 daphne
    myung
        4
    myung  
    OP
       Jun 17, 2018
    @MES
    @ericls

    我现在是用 daphne 启动在 8001 然后 用 再用 uwsgi 8000 端口 + nginx 启动 网站是可以正常浏览,但是在用 chanels 实现到那个聊天 app 里 无法发送消息, 貌似是需要 nginx 做个转发? 求指点
    RobberPhex
        5
    RobberPhex  
       Jun 18, 2018
    启动 daphne,接收 http 和 websocket 请求,送到 redis。
    然后启动 django,从 redis 读取数据,处理。
    chaleaochexist
        6
    chaleaochexist  
       Apr 1, 2019
    @myung 遇到同样问题.老哥有最佳实践分型吗?
    chaleaochexist
        7
    chaleaochexist  
       Apr 1, 2019
    分享.
    leeguo
        8
    leeguo  
       Dec 17, 2020
    asgi.py

    ```
    import os

    import django
    from django.core.asgi import get_asgi_application
    from channels.routing import get_default_application

    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'my_project.settings')
    django.setup()
    # application = get_asgi_application()
    application = get_default_application()

    ```
    daphne -p 8080 my_project.asgi:application

    就可以跑了, 虽然题主可能不需要了, 我给后边的人看的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2343 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 04:40 · PVG 12:40 · LAX 21:40 · JFK 00:40
    ♥ Do have faith in what you're doing.