如何监视每个滚动ID的滚动API所使用的内存资源或搜索上下文?这些搜索上下文存储在哪里,有没有办法查看或监视它们?参数keepAlive对java api public SearchRequest scroll(TimeValue keepAlive){...}意味着什么
引用:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/6.5/java-rest-high-clear-scroll.html#java-rest-high-clear-scroll-async
最佳答案
您可以通过调用Node stats API来检查当前打开了多少搜索上下文,但是(我知道)无法查看它们使用了多少内存:
GET _nodes/stats/indices?filter_path=**.open_contexts
=>
{
"nodes" : {
"QjjWj45NQkGC9qcaylDDVQ" : {
"indices" : {
"search" : {
"open_contexts" : 0
}
}
},
"eZbpkckXSxSxzD8c_QOkEA" : {
"indices" : {
"search" : {
"open_contexts" : 3
}
}
},
"0VFJaC2uTraudPCMqODhiw" : {
"indices" : {
"search" : {
"open_contexts" : 2
}
}
}
}
}
搜索上下文存储在堆中。
此外,
keepAlive
参数告诉上下文在自动清除之前在内存中保持可用状态的时间。关于elasticsearch - 如何监视滚动API为每个滚动ID使用的资源?调用clearScroll Api时会发生什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54886296/