2013-12-21 32 views
1

我打算使用或處理分佈式緩存解決方案,並且我正在嘗試infinispan熱棒協議。它與其他緩存解決方案相比表現相當好,但我覺得它在網絡通信方面比預期的要多。 我們有1000Mbps以太網網絡,客戶端和服務器之間的往返時間大約爲200ms,但無限大熱棒協議在從服務器到客戶端傳輸大小爲30 MB的對象時需要大約7秒。我覺得我需要做tcp調優以縮短這個時間,有人可以請我建議我如何調整tcp以獲得最佳性能?在谷歌搜索中,我發現send-buffer-size和receive -buffer-size在這種情況下可以提供幫助,但我不知道如何以及在哪裏設置這些屬性。有人可以在這方面幫助我。 在這方面的任何幫助,高度讚賞。如何在infinispan hotrod客戶端和服務器中設置send-buffer-size和receive-buffer-size

感謝, 阿比納夫

+0

在同一網絡中延遲200ms,帶寬1000Mbps聽起來很奇怪。您是否嘗試用其他方法測量TCP堆棧的吞吐量,例如通過scp傳輸30MB文件? –

回答

3

默認情況下,熱棒客戶端和服務器啓用TCP-沒有延遲,這是很好的小物件。對於更大的對象,比如你的情況,你可能想禁用它,這樣客戶端/服務器可以緩衝,然後發送。對於客戶端,當您構建RemoteCacheManager時,請嘗試通過infinispan.client.hotrod.tcp_no_delay=false,並且服務器也需要類似的配置選項。如何配置服務器取決於您的Infinispan版本。如果使用最新的Infinispan 6.0.0版本,則必須轉到standalone.xml文件並更改端點子系統配置,以便hotrod-connectortcp-nodelay屬性設置爲false。發送/接收緩衝區僅適用於TCP-no-delay禁用時。這些也可以通過類似的方法配置,但我只會這樣做,如果你對TCP-no-delay被禁用後的結果不滿意。