5

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

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

4

3 回答 3

4

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

您也可以尝试使用Sitecore Lucene Refresher

查看如何在大型内容交付网络场中维护 sitecore lucene 索引以获得更多选择。

于 2013-07-12T09:01:53.877 回答
1

如果您升级到 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

于 2014-07-24T15:05:31.927 回答
1

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

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

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

于 2014-05-01T16:25:11.820 回答