V2EX 首页   注册   登录
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

你知道 Django 是异步的 Web 框架吗?

  •  
  •   ansheng · 36 天前 · 737 次点击
    这是一个创建于 36 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前几天有个问题,就是要在 View 里面调用短信 API,刚开始想,要调短信的 API 就需要用到异步请求了,要不然就会阻塞,因为测试就去调用短信 API 感觉不太好,于是乎就写了两个 View,一个 sleep10 秒一个 sleep5 秒,先访问 10 秒的在访问 5 秒的,最后就呵呵呵呵了,5 秒的先返回,过了 5 秒返回 10 秒的 Vie,总耗时 10 秒。

    艹,为什么会这样?马上 pip 一个 tornado,同样两个 View 一个 sleep5 秒一个 sleep10 秒,然后同时访问,结果就是 10 秒之后返回第一个请求,5 秒之后返回第二个请求,总耗时 15 秒。

    在我的理解总,Web 框架都是单进程单线程的,默认应该是同步的,为什么 Django 是异步的?如果是这样,那么那些用 redis+celery 来处理异步任务的不是脑袋都进水了?

    结论就是 Django 就是异步的框架,那还要 Tornado 干嘛?

    求打醒

    10 回复  |  直到 2017-05-31 19:09:40 +08:00
        1
    Kilerd   36 天前 via iPhone   ♥ 4
    不,让你睡着多好。活在自己的梦里,美滋滋。

    看你发帖,内容里面的语气,不想解释你的问题
        2
    D3EP   36 天前 via Android
    开发环境 Django 是多线程的。Google 一下就出来了(我都没用过 Django )
        3
    Muninn   36 天前
    。。。
        4
    Morriaty   34 天前
    太多人像你一样以为用了 tornado 就是异步了。。。。。
        5
    prasanta   34 天前
    快醒醒
        6
    ytmsdy   34 天前 via iPhone
    @Kilerd 同意!
        7
    huanglongtiankon   33 天前
    你是不是傻,web 框架的请求当然是多线程的啊,不然多人同时访问网站岂不是得一个个等?
        8
    r0okit   33 天前
    首先你的态度和你的基础一样, 然后我敢肯定你在 tornado 里是用的 time.sleep,其次 tornado ,Django, celery, redis 这些我恐怕你只是看过,最多就是敲了两行 demo
        9
    wingyiu   29 天前
    google: tornado 如何正确 sleep
        10
    ysymi   25 天前
    貌似大家都喜欢谦逊低调又厉害的人
    DigitalOcean
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   449 人在线   最高记录 2607   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.7.5 · 59ms · UTC 19:11 · PVG 03:11 · LAX 12:11 · JFK 15:11
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1