elasticsearch的searchasync似乎是一个阻塞调用

2hh7jdfx  于 2021-06-14  发布在  ElasticSearch
关注(0)|答案(0)|浏览(213)

我正在尝试在我的kotlin repo中使用elasticsearch的searchasync方法。我遇到了两个大问题,第一个是,我不知道为什么es的searchasync会长时间阻塞线程。
代码很简单

esClint.searchAsync(request, RequestOptions.DEFAULT, SearchListener())

当searchlistener写在

class SearchListener<T>() : ActionListener<T> {
    override fun onFailure(e: Exception?) {
        println(e)
    }

    override fun onResponse(response: T) {
        println(response)
    }
}

通过启动本地ElasticSearch和kibana并调用端点,我可以看到es很快得到响应(在onresponse函数中),但是线程在继续服务流量之前被阻塞了5秒。
当我使用ElasticSearch的搜索功能时,似乎没有阻塞问题。
我不是在正确地使用这个方法吗。。。?另外,elasticsearch的searchasync和search方法之间有什么区别?我应该用哪一个。。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题