2011-12-02 32 views
0

我使用的django 1.2.1 + cx_Oracle 5.0.411克+ django的oraclepool apache下0.7 + oracle的客戶端11.2 + mod_wsgi的django oraclepool只使用2個會話,爲什麼?

在Django oraclepool設置我設置分:4最大:16增量:1 當應用開始我看到從httpd.exe 4個會話當我開始表演(64併發線程)測試只有2個會話是活動的,2無效(如果我設置分鐘:8,2活躍,6無效),

爲什麼?什麼,我需要如何配置才能開始使用djangopool超過2屆

UPD:服務器是雙核,操作系統:Windows Server 2008R2

+0

嗨安德魯,我有這個問題在收藏夾。你有沒有找到解決你的問題?你可以和我們分享嗎? – danihp

+0

測試工具,女巫是用.Net編寫的,配置爲使用2個連接,我用http://httpd.apache.org/docs/2.0/mod/mod_status.html瞭解有多少個Apache連接正在使用 –

回答

1

僅僅因爲你模擬64個用戶,並不意味着Django是處理請求從以前的用戶在同一時間。如果請求持續時間短,它們可能不會及時重疊,因此需要使用許多併發線程並因此使用數據庫會話。

這一切如何表現也可能由您正在使用的Apache MPM支配,以及您是在嵌入模式還是守護進程模式下使用mod_wsgi,以及爲Apache和mod_wsgi守護進程模式設置了哪些進程/線程。所以,你需要提供更多的信息。

+0

thx,你記得我檢查MPM,但我們有很長的SQL查詢(4秒,100K +記錄),我啓用MPM,結果是相同的 –

+1

我發現測試工具工作在2連接,所以問題是在客戶端測試工具 –