Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何使用Sidekiq每2秒发送一次请求?_Ruby On Rails_Redis_Sidekiq - Fatal编程技术网

Ruby on rails 如何使用Sidekiq每2秒发送一次请求?

Ruby on rails 如何使用Sidekiq每2秒发送一次请求?,ruby-on-rails,redis,sidekiq,Ruby On Rails,Redis,Sidekiq,我有一个工人向服务器发送请求并检查存在的文件。 现在,worker将在指定的时间运行: CheckFileWorker.在(@target\u file.check\u start\u date,@target\u file.url)中执行 我希望每2秒运行一次worker。我怎么能做到 可能需要第二个工人谁将开始第一个工人 我正在使用Sidetiq来安排重复的后台作业() 基本上你应该做类似的事情: class LicenseCheckerWorker include Sidekiq::W

我有一个工人向服务器发送请求并检查存在的文件。 现在,worker将在指定的时间运行:

CheckFileWorker.在(@target\u file.check\u start\u date,@target\u file.url)中执行

  • 我希望每2秒运行一次worker。我怎么能做到
  • 可能需要第二个工人谁将开始第一个工人

  • 我正在使用Sidetiq来安排重复的后台作业()

    基本上你应该做类似的事情:

    class LicenseCheckerWorker
      include Sidekiq::Worker
      include Sidetiq::Schedulable
    
      recurrence { hourly }
    
      def perform
        #your logic here
      end
    end
    
    当然,您应该更改定期计划以反映您的偏好


    编辑:另一种方法是在#perform logic结束时安排另一次运行,延迟2秒。

    类似于重复{secondary(2)}的东西应该可以正常工作,但现在在访问activerecord(使用sidetiq)时遇到问题:很高兴知道:)很乐意帮助