Я написал этого демона ruby, и мне было интересно, может ли кто-нибудь взглянуть на него и сказать, верен ли мой подход.
#!/usr/bin/env ruby
require 'logger'
# You might want to change this
ENV["RAILS_ENV"] ||= "production"
require File.dirname(__FILE__) + "/../../config/environment"
$running = true
Signal.trap("TERM") do
$running = false
end
service = Post.new('http://feed.com/feeds')
logger = Logger.new('reader.log')
while($running) do
# Log my calls
logger.info "Run at #{Time.now}"
service.update_from_feed_continuously
# only run it every 5 minutes or so
sleep 300
end
Мне кажется, что последний цикл не совсем правильный, и он может занимать много памяти, но я не уверен. Кроме того, эти 5 минут, кажется, никогда не происходят точно каждые 5 минут, и я увижу изменения в 4-6 минут.
спасибо заранее