【问题标题】:Sitecore index rebuilding practicesSitecore 索引重建实践
【发布时间】:2013-07-12 07:46:15
【问题描述】:

在我们的 sitecore 项目(6.6.0 rev. 130404)中,我们有超过 200 万个 sitecore 项目。我们配置了几个 Lucene 索引(每个索引都用于这些项目的一个子集)。我们面临的问题是重新重建这些索引所需的时间。特别是使用 Sitecore 的 QuickSearch 索引,除了我们的自定义索引之外,重建该索引可能需要将近一整天的时间。

在日常运营中维护大型站点核心索引的通常做法是什么?您需要多久重建一次索引?当你这样做时,如何应对长时间的网站停机(索引重建使索引下线)?

【问题讨论】:

    标签: sitecore sitecore6 lucene


    【解决方案1】:

    如果您有多个服务器,您可以从负载平衡器中取出其中一个(或阻止它以任何其他方式传送内容)并在此服务器上重建索引。完成后,只需将其放回负载均衡器即可。

    您也可以尝试使用Sitecore Lucene Refresher

    查看how to maintain sitecore lucene indexes in huge content delivery webfarm 了解更多选项。

    【讨论】:

    • 感谢 Maras,您为我们的项目提供了很多帮助。我们的网站没有独立的内容交付方面。内容创建和交付合并在一起。 (我们的内容创建者和查看者是公共用户)。因此,我们不能在重建索引时仅仅“冻结”内容交付。我们还不如关闭网站。 Sitecore Lucene Refresher 似乎值得一看。我会尝试在这里发布我的反馈。感谢您的提示!
    【解决方案2】:

    我想到的一种方法是,您可以根据您网站上的部分/页面/内容来分解索引,这取决于您拥有什么样的数据/结构,以及将它们分解为部分的意义,因此您将拥有 2-20,30、40 等...索引,它们可以通过使用 <root> 标签为 ADBC 配置中的每个索引进行配置,这样,您应该已经知道您在网站的哪个部分创建了更新,如果需要,您可以仅在该索引上进行重建。

    一般来说,您不需要一直重建所有索引,据我所知/记得发布会正确推送更新的索引,但它不会重新重建整个事情。

    我认为重建整个索引的唯一情况是,如果您在新环境中安装了站点,或者由于某种原因从服务器中删除了索引,或者一些类似的情况......

    【讨论】:

      【解决方案3】:

      如果您升级到 Sitecore 7.2,您可以使用 SwitchOnRebuildLuceneIndex 索引。这在您执行索引重建操作时提供了一个工作索引。

      <index id="your_index" type="Sitecore.ContentSearch.LuceneProvider.SwitchOnRebuildLuceneIndex, Sitecore.ContentSearch.LuceneProvider">
      ...
      </index>
      

      详情见 John West 的帖子:http://www.sitecore.net/deutsch/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2013/05/Sitecore-7-Rebuild-Lucene-Indexes-in-Temporary-Subdirectories.aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多