首頁  >  問答  >  主體

wsgi - apache和django之間如何調用

看了一些網路上wsgi的介紹,基本上都是說wsgi是什麼,沒有說wsgi具體如何運作的。

簡單地說,我想知道一個用django+apache搭建的web伺服器上,apache收到客戶端的請求,是如何將請求傳遞給django程式碼的。

django的程式碼是運行在apache的進程裡的,還是自己有一個進程,透過某種方式進行通訊?

如果是跑在apache的進程裡的,那麼每次有新的apache進程創建,都會重新載入django的程式碼?

某草草某草草2713 天前525

全部回覆(2)我來回復

  • ringa_lee

    ringa_lee2017-05-16 17:05:03

    其實就是個中間通訊協議,正如樓上說的,用http也可以,wsgi好像效能要好一點,目前最好的是不是wsgi,我也記不清楚了,我這邊用的是uwsgi.Java裡面HTTPServer和應用程式容器之間也有類似的通訊協定。兩次隔離有基本的好處就是靜態文件可以直接用httpServer服務提供就Ok了。
    httpServer和容器是完全獨立的進程,準確的說可以不只兩個,uwsgi可以隨便開多少個都行,完全可設定的,例如同時開4-6個uwsgi服務進程提供容器服務。

    回覆
    0
  • 阿神

    阿神2017-05-16 17:05:03

    Apache将请求直接转发给Django,和直接访问Django沒有什麼差異

    官方文件

    https://docs.djangoproject.com/en/1.7/howto/deployment/wsgi/modwsgi/

    回覆
    0
  • 取消回覆