solr - solr 中的多线程
问题描述
当我运行 solr 5 及更高版本时,它在自己的 Jetty 容器中运行,不再在 tomcat 下运行。当我检索进程 id 并在给定的进程 id 上运行 top -p pid 时,我确实看到一个线程正在运行。
但是要知道这个线程产生了多少线程,如果我使用ps huH -p pid,我确实看到多个线程出现,链接到这个父 pid。这些是 solr 产生的多个线程吗?
这些线程是否提供查询/压缩索引....等?如果是这种情况,如果机器空闲,这些线程计数应该会下降。
有人可以对 solr 线程有所了解或将我指向正确的文档吗?
谢谢 SR0
解决方案
通过转到 Solr 管理页面下的“线程转储”窗格,您可以准确查看每个线程正在做什么:
如果您打开此页面,您将获得在 Solr 的 JVM 中运行的所有线程的列表,您可以展开每个线程以查看它正在执行的任务的堆栈跟踪:
从这些线程的名称中可以看出(.. 不仅仅是我屏幕截图中的那三个),它们正在执行各种任务 - 以qtp
Jetty 为前缀的线程,而以 为前缀的zk
则负责 Zookeeper 操作。其他跟踪计划任务和触发器,一些执行搜索,一些可能正在运行优化或提交,一些可能正在索引文档(例如处理 Tika)等。
这些线程中的大多数都保留了下来,因为它们实现了必须始终运行的中心功能,例如监视 Zookeeper 的更改、搜索索引、跟踪计划任务等。保留它们并不是很昂贵任何一个。
推荐阅读
- apache-kafka - 查询某个时间范围内的 Kafka Streams 状态存储
- powershell - 找出 o365 用户的直接分配许可证
- android - 如何禁用 XML 项目设置
- r - 将嵌套列表元素保存为 .rds
- amazon-web-services - aws cloudformation 错误:无法解压缩上传的文件。请检查您的文件,然后尝试重新上传
- php - PDF 内容从应用程序视图更改为下载的文件
- database - MongoDb replaceOne() 但需要很少的字段
- tcp - netfilter_queue ipv4 可选标头删除
- verilog - << 运算符合成的硬件是什么
- svn - SVN 子权限设置不会覆盖父路径上的