首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
V2EX  ›  Python

用用 uwsgi 来部署 django 项目用--http 和--socket 的不同处在哪?

  •  
  •   chengxiao · 352 天前 · 2284 次点击
    这是一个创建于 352 天前的主题,其中的信息可能已经有所发展或是发生改变。
    以前一直是用 --socket 来部署的,感觉不管用--http 还是-- socket,最后都要包一层 nginx 在外面,就是比较好奇,两种方式在执行效率上哪个会高一些
    10 回复  |  直到 2018-11-27 08:25:48 +08:00
        1
    wingyiu   352 天前
    文档有写
        2
    wizardoz   352 天前
    http 的话,nginx 和 uwsgi 中间走的是 http 协议,文本
    socket 的话,nginx 和 uwsgi 中间走的是 wsgi 协议,二进制

    感觉 wsgi 协议效率会更高一点
        3
    knightdf   352 天前   ♥ 1
    通信协议不一样,就这,http 的多了包校验之类的
        4
    xpresslink   352 天前   ♥ 1
    连接方式其实有三种
    unix Socket,这个性能效率最高,直接内存交换,但必须应用和 NGX 同在一台服务器上
    TCP Socket, 二进制包传递
    HTTP, 是基于 TCP 上面的一层文本协议
        5
    chengxiao   352 天前
    @xpresslink 感谢,其实问这个问题是因为现在想用 docker 来部署,想把 docker+uwsgi 放一个容器,然后 nginx 单独一个容器,似乎这样部署就只能用 http 了
        6
    allen0125   352 天前
    在文档里面看到一句
    Using Unix sockets instead of ports
    So far we have used a TCP port socket, because it ’ s simpler, but in fact it ’ s better to use Unix sockets than ports - there ’ s less overhead.

    docker 部署的话,容器里面如果没有 nginx,静态文件怎么搞啊。
        7
    Neojoke   352 天前
    生产环境百分之九十九是 unix Socket 的方式,ngnix 是做反向代理用的,因为 uwsgi 不具备路由、过滤等方向代理功能,但论执行效率,可以做性能测试,如果是 http 协议的话,性能是没有 unix Socket 方式好的
        8
    xpresslink   352 天前
    @chengxiao 用 docker 来部署一般用 TCP socket,如果容器用主机网络模式,用个不冲突的端口号就可以了。
        9
    chengxiao   352 天前
    @allen0125 静态文件可以挂载出来的吧
        10
    wonderay   351 天前
    @allen0125 可以共享 volume

    @chengxiao 也可以用 socket
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   945 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 21:57 · PVG 05:57 · LAX 13:57 · JFK 16:57
    ♥ Do have faith in what you're doing.