【问题标题】:Sunspot reindex with sidekiq使用 sidekiq 重新索引太阳黑子
【发布时间】:2015-09-28 18:41:39
【问题描述】:

当我尝试使用 sidekiq 在后台重新索引一些记录时,什么也没发生。

afisha.delay(:queue => 'critical').reindex_showings

但如果我在没有 sidekiq 的情况下重新索引这些记录,一切正常。

afisha.reindex_showings

谁能帮忙?

【问题讨论】:

    标签: ruby-on-rails sidekiq sunspot sunspot-rails


    【解决方案1】:

    我怀疑这些更改并未“提交”给 Solr。将更改发送到 Solr 后,它们需要“提交”才能生效(并变得可见)。 在每个网络服务器请求结束时,Sunspot 会自动提交您对索引所做的任何更改。但是,在 Sidekiq 作业结束时不会进行此类处理。您有几个选择:

    1. 告诉 Solr 每隔一段时间自动提交一次(在 solrconfig.xml 中)。

          1000030000
    2. 创建一个运行的自定义作业:

       afisha.reindex_showings
       Sunspot.commit
      
    3. 修改 Sidekiq,使其始终在每个作业结束时调用 Sunspot.commit(请注意,这可能会影响性能)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多