簡體   English   中英

在Rails 4.2.5 Jruby 2.2.2中使用DelayedJob和RestClient

[英]Using DelayedJob and RestClient in Rails 4.2.5 Jruby 2.2.2

我在我的應用程序中使用了delay_jobs和rest_client,創建了一個Jobs文件夾和一個Job類jobs / test_job.rb。

class TestJob < Struct.new(:name)
 def perform
  RestClient.get "http://name"
 end 
end

RestClient和DelayedJob正常工作,但是當客戶端( http:// name )關閉時,delay_job給我錯誤SocketError,並且不重試。

在我的控制器中,我有這個。

Delayed::Job.enqueue TestJob.new(my_other_rails_app), :queue => "my_test"

發生錯誤時,delay_job是否不重新排隊?

我解決了這個問題,如果在不同的數據庫中發生錯誤,則延遲工作會起作用,所以這是我的數據庫存在的問題,我正在使用opendge,錯誤是字符串對於last_error字段而言太長,因此我需要修改gem以便不保存長錯誤或更改字段字符長度。 delay-job-4-1-2 \\ lib \\ delayed \\ backend \\ base.rb來自:

def error=(error)
    @error = error
    self.last_error = "#{error.message}\n#{error.backtrace.join("\n")}" if respond_to?(:last_error=)
end

至:

def error=(error)
 @error = error
 self.last_error = "#{error.message}" if respond_to?(:last_error=)
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM