在發佈之前,我已經在線閱讀了很多資源,其中包括mod_wsgi wiki,但我對Apache進程/線程與mod_wsgi的交互方式感到困惑。Apache + mod_wsgi交互
這是我目前的理解:Apache可以配置爲運行,以便一個或多個子進程可以處理傳入的請求,並且可以配置這些子進程中的每個進而使用一個或多個線程來處理請求。之後,事情開始變得對我朦朧。我的疑惑是:
- 什麼是WSGIDaemonProcess,以及究竟是誰使用Python解釋器分我叫Django應用程序?
- 如果我的Django應用程序運行在允許多個線程在一個Apache子進程中的模式下 - 這是否意味着多個請求可以同時訪問我的應用程序?如果是這樣 - 將設置一個模塊級變量(比如用戶的ID)可能會被其他並行請求覆蓋並導致非線程安全行爲?
- 對於上面的情況,使用Python的全局解釋器鎖定,線程是否會實際並行執行?