`
san_yun
  • 浏览: 2664484 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

solr遇到的cpu使用率过高问题。

    博客分类:
  • solr
 
阅读更多
"pool-13-thread-1" prio=10 tid=0x00000000444e0000 nid=0x38d9 runnable [0x000000004293c000]
   java.lang.Thread.State: RUNNABLE
        at org.apache.lucene.util.UnicodeUtil.UTF8toUTF16(UnicodeUtil.java:541)
        at org.apache.lucene.index.TermBuffer.read(TermBuffer.java:83)
        at org.apache.lucene.index.SegmentTermEnum.next(SegmentTermEnum.java:133)
        at org.apache.lucene.index.SegmentTermEnum.scanTo(SegmentTermEnum.java:174)
        at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:202)
        at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:172)
        at org.apache.lucene.index.SegmentTermDocs.seek(SegmentTermDocs.java:66)
        at org.apache.lucene.search.MultiTermQueryWrapperFilter.getDocIdSet(MultiTermQueryWrapperFilter.java:125)
        at org.apache.lucene.search.ConstantScoreQuery$ConstantWeight.scorer(ConstantScoreQuery.java:139)
        at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:577)
        at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:364)
        at org.apache.solr.search.SolrIndexSearcher.getDocSetNC(SolrIndexSearcher.java:863)
        at org.apache.solr.search.SolrIndexSearcher.getDocSet(SolrIndexSearcher.java:617)
        at org.apache.solr.search.SolrIndexSearcher.cacheDocSet(SolrIndexSearcher.java:581)
        at org.apache.solr.search.SolrIndexSearcher$2.regenerateItem(SolrIndexSearcher.java:330)
        at org.apache.solr.search.LRUCache.warm(LRUCache.java:195)
        at org.apache.solr.search.SolrIndexSearcher.warm(SolrIndexSearcher.java:1815)
        at org.apache.solr.core.SolrCore$2.call(SolrCore.java:1166)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)



org.apache.lucene.search.MultiTermQueryWrapperFilter.getDocIdSet(MultiTermQueryWrapperFilter.java:136):

@Override
  public DocIdSet getDocIdSet(IndexReader reader) throws IOException {
    final TermEnum enumerator = query.getEnum(reader);
    try {
      // if current term in enum is null, the enum is empty -> shortcut
      if (enumerator.term() == null)
        return DocIdSet.EMPTY_DOCIDSET;
      // else fill into a FixedBitSet
      final FixedBitSet bitSet = new FixedBitSet(reader.maxDoc());
      final int[] docs = new int[32];
      final int[] freqs = new int[32];
      TermDocs termDocs = reader.termDocs();
      try {
        int termCount = 0;
        do {
          Term term = enumerator.term();
          if (term == null)
            break;
          termCount++;
          termDocs.seek(term);
          while (true) {
            final int count = termDocs.read(docs, freqs);
            if (count != 0) {
              for(int i=0;i<count;i++) {
                bitSet.set(docs[i]);
              }
            } else {
              break;
            }
          }
        } while (enumerator.next());                            //L136

        query.incTotalNumberOfTerms(termCount);

      } finally {
        termDocs.close();
      }
      return bitSet;
    } finally {
      enumerator.close();
    }
  }



org.apache.lucene.search.IndexSearcher.search()的执行时间:
Search .execute time is:720ms
Search .execute time is:758ms
Search .execute time is:758ms
Search .execute time is:3ms
Search .execute time is:4ms
Search .execute time is:804ms
Search .execute time is:804ms
Search .execute time is:863ms
Search .execute time is:863ms
Search .execute time is:816ms
Search .execute time is:816ms
Search .execute time is:923ms
Search .execute time is:923ms
Search .execute time is:829ms
Search .execute time is:829ms
Search .execute time is:929ms
Search .execute time is:929ms
Search .execute time is:1000ms
Search .execute time is:1000ms
Search .execute time is:1ms
Search .execute time is:1ms
Search .execute time is:796ms
Search .execute time is:796ms
Search .execute time is:728ms
Search .execute time is:728ms
Search .execute time is:750ms
Search .execute time is:750ms
Search .execute time is:6ms
Search .execute time is:6ms
Search .execute time is:745ms
Search .execute time is:745ms
分享到:
评论

相关推荐

    solr的安装使用步骤

    ### Solr的安装使用步骤详解 #### Solr概述与特性 **Solr** 是 Apache 下的一个顶级开源项目,它基于 **Lucene** 进行构建,提供了强大的全文搜索能力。相较于 Lucene,Solr 提供了更为丰富的查询语言支持,并且...

    解决solr启动404问题

    Solr是Apache Lucene项目的一个子项目,是一个高性能、基于Java的企业级全文搜索引擎服务器。当你在尝试启动Solr时遇到404错误,这通常意味着Solr服务没有正确地启动或者配置文件设置不正确。404错误表示“未找到”...

    Solr(Cloudera)使用手册

    ### Solr(Cloudera)使用手册 #### 一、创建Collection与管理实例 在使用Solr(Cloudera)时,创建Collection是基本的操作之一。Collection是Solr中的数据存储单元,相当于关系数据库中的表。 ##### 创建路径与实例 ...

    solr介绍及使用.docx

    在传统的数据库查询中,如 MySQL,可能会遇到一些限制,例如多表查询效率低下、大文本字段索引和搜索困难、复杂查询表达式处理能力不足等问题,尤其是在面对大数据量时,查询延迟会显著增加。而 Solr 正是为了解决...

    easynet.solr开发与使用

    《easynet.solr开发与使用》 在现代信息技术领域,搜索引擎已经成为不可或缺的一部分,而Apache Solr作为一款强大的开源搜索引擎,被广泛应用于各种数据检索场景。为了方便开发者更高效地集成和操作Solr,Easynet...

    solr4.9安装使用手册

    Solr 是一个开源的全文搜索引擎,它提供...理解Solr的核心概念,如核心、字段类型和索引,对于有效地使用和管理Solr至关重要。同时,保持对最新官方文档的了解,能够帮助你解决可能出现的问题,提升你的Solr应用能力。

    solr中文分词高版本

    "solr中文分词高版本"的标题表明我们在这里讨论的是适用于Solr 6.5及以上版本的中文分词解决方案,因为默认的Solr分词器可能不支持这些较高版本,或者在使用过程中会出现问题。 描述中提到的“网上提供的solr中文...

    solr的安装与使用

    Solr安装与使用 Solr是一款功能强大的搜索引擎,能够帮助我们快速搭建企业搜索平台。在本文中,我们将详细介绍Solr的安装和使用过程。 一、安装Solr 首先,我们需要下载Solr的安装包。这里我们使用的是Solr 1.3...

    solr资料以及问题汇总

    "Lucene-Solr开发经验.mht"文件可能分享了一些开发者的实战经验,这对于遇到问题时寻找解决方案或者避免常见错误非常有帮助。 "Solr and Jboss.mht"讨论了Solr与JBoss应用服务器的集成,对于在企业环境中部署Solr的...

    solr6.5使用的IK分词

    "solr6.5使用的IK分词"就是一个针对Solr 6.5版本的中文分词解决方案。 **IK分词器** IK分词器(Intelligent Chinese Analyzer)是由Lucene社区开发的一款高性能的中文分词工具,适用于Java环境。它的主要目标是为...

    solr5.5.4部署及使用

    首先,我们需要准备合适的环境,这里要求的是JDK 1.7 或更高版本,Tomcat 8 或以上版本,以及Solr 5.5.4和相应的SolrJ库。这些组件可以从官方网站下载并进行安装。 对于Jetty部署方式,首先从Apache官网下载Solr ...

    solr分词器使用手册

    - **定义**:Solr是一款基于Java开发的、由Apache基金会维护的顶级开源项目,它是一款高性能的全文检索服务器。Solr不仅继承了Lucene的核心索引与搜索能力,还在此基础上提供了更加丰富的查询语言和更易于使用的API...

    solr在java中使用总结

    Solr是一个高性能的全文搜索引擎,基于Apache Lucene开发,使用Java 5编写。它不仅继承了Lucene的强大功能,还提供了更丰富的查询语言以及更好的性能优化。Solr具备高度可配置性和可扩展性,支持通过HTTP请求提交XML...

    solr 的使用及安装

    本文将深入讲解 Solr 的使用及安装过程。 一、Solr 简介 Solr 基于 Lucene 库,提供了一个高度可配置和可扩展的平台,用于处理和索引大量数据,支持多种数据源,如文件、数据库等。其主要特性包括: 1. **全文搜索...

    使用docker 部署solr

    centos7 环境 安装docker 并在docker 中部署solr 并使用

    solr5.4.0以上使用的apache-solr-dataimportscheduler

    这个功能在Solr 5.4.0及更高版本中尤其有用,因为它允许用户自动化索引更新,确保Solr搜索服务始终与底层数据源保持同步。以下是关于这个插件及其在Solr 5.4.0以上版本中使用的一些关键知识点: 1. **...

    lucene,solr的使用

    ### Lucene与Solr的使用详解 #### 一、Lucene概述 Lucene是一款高性能、全功能的文本搜索引擎库,由Java语言编写而成。它能够为应用系统提供强大的全文检索能力,是当前最为流行的开源搜索库之一。由于其高度可...

    Solr入门使用详解.zip

    通过阅读“Solr使用详解.pdf”,你可以深入了解Solr的使用方法,掌握从安装配置到实际操作的全过程,从而更好地利用Solr解决实际的搜索和分析问题。同时,solrJ和IK分词器的使用将进一步提升你在Java环境中操作Solr...

Global site tag (gtag.js) - Google Analytics