2012-04-19 62 views
1

我們使用Netty框架構建了一個實時系統來處理我們的HTTP請求。對該服務的電話中有20%是長期性質的,在大多數情況下,我們在55秒後回覆。Netty服務器在高負載下請求的時間較長

隨着負載增加,響應時間逐漸增加,並且在高負載條件下(建立20000個長輪詢連接和10000個短輪詢連接),響應時間超過5秒。

我們確認請求在網絡服務器級別延遲。所有其他因素(客戶端,Nginx,服務器業務邏輯)都經過驗證是不成問題的。我們甚至嘗試將我們的業務邏輯完全移除的測試運行起來。結果仍然是一樣的。

有人可以指出如何調整Netty來處理這種負載。

溼婆。

+0

這似乎是你的問題的一部分被切斷。你可以在編輯中添加其他細節嗎? – cha0site 2012-04-19 09:25:09

+0

是的,請添加您的文章缺少的部分。 – 2012-04-19 19:30:29

+0

對不起。在發佈時錯過了它。現在添加完整文本。 – 2012-04-20 07:21:21

回答

1

聽起來好像您可能還沒有將這20%的請求處理到管道中的ExecutionHandler後面。如果是這種情況,那麼你的工作線程會停滯不前,無法處理新的請求。儘管可以確保可以立即處理的請求在ExecutionHandler之前處理。

org.jboss.netty.handler.execution.ExecutionHandler

+0

聽起來很有趣。我會試一試。 – 2012-04-25 14:22:33