python | WSGI学习

Author Avatar
Aryb1n 1月 04, 2018

http://python.jobbole.com/88653/

文章讲的很好了

WSGI 是 python 定义的

WSGI就是规定了server和application如何通信的协议(从Server端看)

这里server不是我们通常说的B/S和C/S里的server

可以认为是这样子(但愿我理解的对)

+========+                     +=========================+
|Client  | ================>   |        ===+WSGI+===     |
|Browser | <================   | Server ===|协议|=== app |
+========+                     +=========================+
+B  or  C+                     |我们说的B/S或者C/S里面的S|
+--------+                     +-------------------------+

常见的Django, Flask 应该算是这里的app
但他们里面也有简单的Server(WSGIRefServer的封装应该是?)实现,所以自己也可以跑起来,生产环境则会搭配一些Server, 比如bjoern, gunicorn, uWSGI
所以这些web框架,一般会有几种不同的启动方式?

Bottle, 只有一个文件的web框架

我怕是个傻子,才知道ipython的存在…

这里有个turorial: http://wsgi.tutorial.codepoint.net/

app端大致的定义

def app(environ, start_response):
    ...
    start_response(status, headers)
    ...
    return iterator

    # environ, start_response由Server调用app时候传入...放在js里大概是就是叫回调函数?

另外有一篇为什么要用ORM的: https://stackoverflow.com/questions/398134/what-are-the-advantages-of-using-an-orm