[英]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.