10

Yolculuğumdan tek boynuzlu atlara geçtikten sonra garip bir problemim var.unicorn Serinletici Taşlar söyleyerek askıda kalıyor

Hem geliştirme hem de aşamalandırma ortamı için tek boynuzlu at yapılandırdım. , geliştirme aşamasında değil, evrelemede çalışıyor. Gelişiminde 8080 dinlemesi, bir unix soketini dinlemede olduğu gibi. Bu herhangi bir fark yaratacak mı? Özellikle üretimde env var mı?

Bu i

  1. evreleme bunu çalıştırdığınızda
  2. başlayan bazen aşağı yerleşir ve bunu kullanmak mümkün iken, neredeyse% 100 CPU alır ne olduğudur
  3. * Ama çoğu kez uyur ** ve onu öldürmek zorunda kaldım.

Ben Bu şimdiye unicorn.stderr.log

I, [2011-08-26T09:02:53.324286 #5026] INFO -- : unlinking existing socket=/home/krishnaprasad/project_name/tmp/sockets/unicorn.sock 
I, [2011-08-26T09:02:53.324502 #5026] INFO -- : listening on addr=/home/krishnaprasad/project_name/tmp/sockets/unicorn.sock fd=3 
I, [2011-08-26T09:02:53.324860 #5026] INFO -- : Refreshing Gem list 

yılında neden taşlar yenilemek için deneyin yok gördüklerinizi bu konuda click here

ile ilgili bir soru açmış? config dosyasında bunu önlemek için herhangi bir yolu var mı?

bu i

# unicorn_rails -c /config/unicorn_staging.rb -E staging -D 

rails_env = 'staging' 

working_directory "/home/krishnaprasad/Projects/project_name" 
worker_processes 1 
preload_app true 
timeout 90 

rails_root = "/home/krishnaprasad/Projects/project_name" 
listen "#{rails_root}/tmp/sockets/unicorn.sock", :backlog => 2048 

pid "#{rails_root}/tmp/pids/unicorn.pid" 
stderr_path "#{rails_root}/log/unicorn.log" 
stdout_path "#{rails_root}/log/unicorn.log" 

GC.copy_on_write_friendly = true if GC.respond_to?(:copy_on_write_friendly=) 

before_fork do |server, worker| 
    ActiveRecord::Base.connection.disconnect! 
    old_pid = "#{Rails.root}/tmp/pids/unicorn.pid.oldbin" 
    if File.exists?(old_pid) && server.pid != old_pid 
    begin 
     Process.kill("QUIT", File.read(old_pid).to_i) 
    rescue Errno::ENOENT, Errno::ESRCH 
     # someone else did our job for us 
    end 
    end 
end 

after_fork do |server, worker| 
    ActiveRecord::Base.establish_connection 
end 

derece takdir Herhangi bir yardım unicorn_staging.rb/config ne var. Teşekkür peşin

+0

Bunu hiç anladın mı? Aynı problemi yaşadım. – David

+0

Bu satırı kaldırdım ve biraz çalışıyordum ama hala yavaş çalışıyor after_fork do | server, worker | Paylaşılan veritabanı ile sorunlara neden olacağı çizgiyi kaldırma gibi görünüyor –

+0

ActiveRecord :: Base.establish_connection uç senin boynuzlu at alt süreçteki işler. Ön yükleme uygulamasıyla daemon modunda Unicorn'u çalıştıramamıştım. Ön yükleme uygulamasını devre dışı bıraktıktan sonra sorunlara neden oldu. – David

cevap

0

Kodunuzun sözdizimi hataları içermediğinden emin olun! Bana (benim denetleyicileri birinde) bir sözdizimi hatasının düzeltilmesi için

döngü sona erdi ve düzgün Unicorn başladı. Unicorn'da herhangi bir hata mesajı almadım, WebRat kullanmaya başlamak ve bir hata olup olmadığını görmek isteyebilirsiniz.

0

Benim için veritabanı bağlantısı doğru şekilde yapılandırılmadı. bazen konsolunda bu raporları gibi bazen sadece spin, görünüyor.

İlgili konular