ruby-on-rails - 如何使用sidekiq和队列作为searchkick `callbacks`选项

标签 ruby-on-rails elasticsearch sidekiq searchkick

我正在使用searchkick与RoR 4应用程序上的elasticsearch一起使用。 Searchkick很棒,而且令人惊讶的易于使用,但是其中一些选项没有得到很好的描述。
这是一个交通繁忙的站点,因此我正尝试使用sidekiq异步完成大多数工作。
我正在尝试在创建/更新记录后放置更新索引以使其也异步工作,但:queue选项似乎更适合我的情况,因为它正在对丢失的记录进行大量更新。

因此,文档说的是set_up redis和模型上的callbacks选项,并且:

Then, set up a background job to run.

Searchkick::ProcessQueueJob.perform_later(class_name: "Product")



该代码放在哪里?

当我添加一些记录时,在运行一次之前它们是不可见的,是否应该按时间表运行?作为CRON任务?

最佳答案

是的,您应该设置cron作业:创建rake任务并开始执行它。 searchkick回调作为队列使用Redis队列。作业开始后,它将获取到目前为止所有累积的“产品” ID并为其编制索引。因此,如果要使产品的索引保持最新状态,则需要重复执行该工作。

关于ruby-on-rails - 如何使用sidekiq和队列作为searchkick `callbacks`选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61667751/

相关文章:

ruby-on-rails - 救援 Twilio::REST::RequestError 不工作

ruby-on-rails - Rails 迁移将当前日期设置为默认值

ruby-on-rails - 在 Rails 中使用 sidekiq,我如何向一群用户发送消息,每个用户都有他们想要接收的唯一时间?

ruby - 如何调试sidekiq前端?

ruby-on-rails - 您正在连接到 Redis v3.0.504,Sidekiq 需要 Redis v4.0.0 或更高版本

javascript - jQuery 从 <a href 'Click Me' >Click Me</a> 中提取 ="http://example.com"

ruby-on-rails - 显示不同Rails 500消息的自定义消息的最佳方法?

Elasticsearch 术语聚合性能

Elasticsearch - search_type 作为主体参数

elasticsearch - 在 CentOS 6.5 上将 Kibana 4.1.1 作为服务运行