2010-08-10 88 views
0

我們目前正在開發一個將大型圖像文件傳輸到客戶端的servlet。我們試圖確定我們的集羣中需要多少個Jboss節點以及Apache mod_jk負載均衡器。我知道大約需要5000毫秒來提供一個請求。我正在嘗試使用論壇http://people.apache.org/~mturk/docs/article/ftwai.html來確定有多少可能的連接,但我遇到了一個問題,因爲它們沒有解釋公式中的每個數字。具體來說,他們說你應該限制每個服務器每個cpu 200個請求,但我不知道我是否應該在公式中使用它。我們使用的每個服務器將有8個內核,所以我覺得應該forumula要麼是這樣的:併發連接的最大數量jBoss

併發用戶數=(五千分之五百)* 200 * 8 = 100個併發用戶

或者這樣:

併發用戶=(500/5000)*(200 * 8)* 8 = ~1200個併發用戶

它們意味着什麼會產生很大的差異。沒有在他們的文檔中的例子很難說。任何人都可以澄清?

在此先感謝。

回答

1

我想這些圖像不是靜態的,或者你已經停在這條線?

首先要減輕來自 Tomcat的負載是使用Web服務器 服務如圖像, 等靜態內容..

即使沒有,你有更大的問題比係數8:他的公式的目的是確定沒有AART(平均應用程序響應時間)超過0.5秒時可以處理多少個併發連接。您的應用程序需要5秒鐘才能提供一個請求。你應用它的公式告訴你,9個女人可以在一個月內生產一個嬰兒。

如果您同意0.5秒是最大可接受的AART,那麼您首先必須能夠在< = 0.5秒內提供單個請求。否則,您需要用ms(500)替換其最大AART的值(必須大於或等於您的實際AART),以毫秒爲單位(500)替換其值。

最後,關於他的CPU術語是否應該考慮核心的問題:它將根據CPU &工作負載而變化。如果您提供大圖像,則可能是IO限制,而不是CPU限制。你需要測試。

最大化Tomcat的線程池&增加更多的負載,直到找到AART降級的點。這是你等式下半部分的實際值。但在此時,您可以通過確定AART何時超過您的最大值來繼續測試並查看「併發用戶」的實際值。