非常奇怪的事情正在发生,我可以理解为什么。
Ruby守护进程启动,处理其代码,但是当有一些业务与activerecord时 - 他不能这样做。我真的不明白为什么和谷歌没有说守护进程和activerecord问题。
源代码:
require File.expand_path('../../config/environment', __FILE__)
require 'rubygems'
require 'rails'
require 'tweetstream'
TweetStream.configure do |config|
(configuration omitted)
end
tag = HashTag.active.first
while true
TweetStream::Daemon.new('tracker').track('#'+tag.tag) do |status|
unless status.media.blank?
tag.images.create(
url: status.media.first.media_url,
author_id: status.from_user,
post_id: status.id
)
end
end
end
我也试过
Daemon.run_proc 'tracker' do
tag = HashTag.active.first
while true
TweetStream::Client.new.track('#'+tag.tag) do |status|
unless status.media.blank?
tag.images.create(
url: status.media.first.media_url,
author_id: status.from_user,
post_id: status.id
)
end
end
end
end
但它让一切变得更糟。