2014-09-24 57 views
3

我在OpenShift上的apache服務器上有一個Django應用程序,並希望測試其性能,這是多少需要處理請求(GET或POST)並返回響應用戶。基準Django應用程序與許多同時請求,如ab

我希望能夠測試它,同時設置頁面的請求數量,我正在進行基準測試,其中有多少將與ab一樣同時完成。

我嘗試過使用ab,但是我不能用它來處理需要驗證並登錄用戶的頁面。有沒有一種工具可以幫助我自動化這些睾丸?我希望該工具能夠在django環境之外運行,因爲我希望我的僱主能夠通過他的PC運行它。

你會建議什麼?我想測試的一些頁面也會進行一些模型搜索並返回一些結果,並且還會上傳一些圖片。我希望能夠自動化和測量這些。

+0

您使用什麼樣的身份驗證? – Zulu 2014-09-29 23:18:45

+0

我正在使用django的會話身份驗證,因爲您正確地猜出了您的答案。 – Apostolos 2014-09-30 07:20:57

回答

1

如果您使用Django的SessionMiddleware,則ab可以測試需要驗證的網址。 Django使用存儲在cookie中的ID(在用戶端)進行身份驗證用戶。的ab一個例子驗證的請求:

ab -C sessionid=YourTokenID https://yourwebsite.org 
  • sessionid是cookie的名稱
  • YourTokenID可以用瀏覽器或模型django.contrib.sessions.models.Session

參考不難發現:

+0

這是我的命令ab -c 100 -n 1000 -C sessionid = myTokenID -Csrftoken = myCSRFTOKEN http://127.0.0.1:8000/crm/calendar/fullcalendar/ 但是我從服務器收到套接字錯誤...在django的開發中運行,然後在apache上運行。這很重要嗎? – Apostolos 2014-09-30 08:04:48

+0

Django開發服務器不適用於。我認爲它不能支持加載並引發socketError。 – Zulu 2014-09-30 08:16:04

+0

謝謝你最後一件事,如果你可能知道...我試圖張貼在一個URL後,我獲得我的sessionid和csrfid,但我仍然從服務器獲得403狀態碼。 post_data文件包含以下行:doctor && 2&csrfmiddlewaretoken = mytoken – Apostolos 2014-09-30 08:24:35

相關問題