2017-04-05 18 views
0

我做了一些壓力測量箱-1.1.1,並得到了非常低的tps,300多或少,有2臺物理機和10G JVM,3G數據和14個碎片,70多個領域,我的SQL就好比:是否有緩慢的日誌顯示像elasticsearch

> select count(*) from mytable where field1='abcd' and field2='defs' and 
> field3='aas' 

*。我想是不是箱子的真實表現,是有一些提示或一些方向,我可以試試嗎?

有32CPU 64內核,並在創建連接時設置節點的IP和端口。 CPU使用率90%以上,mem使用率和磁盤io處於較低水平。可用的RAM是32G,只有3G數據,所以堆設置爲10G。

並使用apache.jmeter產生壓力。 vuser設置爲50 90 120 150 200.

+0

嗨,你的CPU有多少核心?您是否在查詢中遇到了兩個節點(即連接到每個節點?)硬件利用率如何(CPU,內存,磁盤)?最重要的是,您擁有哪種類型的磁盤(SSD或HDD)?還有多大你相對於可用RAM設置你的堆(它應該是大約一半):) – claus

+0

有32CPU 64內核,並且在創建連接時設置節點的IP和端口。 CPU使用率90%以上,mem使用率和磁盤io處於較低水平。可用的RAM是32G,只有3G數據,所以堆設置爲10G – tony

回答

0

您應該嘗試提高併發性。意思是 - 並行運行多個查詢。如果按順序執行,則吞吐量將最小化。

數學非常簡單:如果查詢需要20ms,並且運行1個單線程,則最大吞吐量爲50個請求/秒。但是如果你將併發性提高到10--它將會是500 req/s。

但是,如果併發性過高,則可能會使羣集飽和。所以你想試驗一下併發性。