簡體   English   中英

無論如何檢查當前批量隊列大小 Opensearch?

[英]Is there anyway to check current bulk queue size Opensearch?

我的 Opensearch 在寫入數據時有時會出現“429 Too Many Requests”錯誤。 我知道有一個隊列,當隊列已滿時它會顯示該錯誤。 那么有沒有 Api 來檢查批量隊列狀態,當前大小......? 示例:隊列 150/200(快滿)

可以,您可以使用下面的API撥打

GET _cat/thread_pool?v

你會得到類似這樣的東西,你可以在其中看到節點名稱、線程池名稱(查找write )、當前正在執行的活動請求數、隊列中等待的請求數以及最后被拒絕的請求數.

node_name       name   active queue rejected
node01          search      0     0        0
node01          write       8     2        0

寫入隊列可以處理與1 + number of CPUs請求,即可以同時激活盡可能多的請求。 如果活動已滿並且有新請求進來,它們 go 直接在隊列中(默認大小 10000)。 如果 active 和 queue 已滿,則請求開始被拒絕。

您的里程可能會有所不同,但在優化時,您正在查看:

  • 保持拒絕為 0
  • 最小化隊列中的請求數
  • 確保盡快執行活動請求。

與其增加隊列,不如增加 CPU 數量通常更可取。 如果你有大量的攝取管道,添加攝取節點通常是一個好主意,其目標是執行該管道而不是在數據節點上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM