मुझे यात्री से यूनिकॉर्न में स्थानांतरित होने के बाद स्टेजिंग में एक अजीब समस्या है।यूनिकॉर्न लटकते हुए कहते हैं कि ताज़ा रत्न
मैंने विकास और स्टेजिंग पर्यावरण दोनों के लिए यूनिकॉर्न कॉन्फ़िगर किया। यह विकास में काम कर रहा है लेकिन स्टेजिंग में नहीं है। विकास में 8080 की बात सुन रही है जहां एक यूनिक्स सॉकेट को सुनकर मंचन किया जा रहा है। क्या इससे कोई अंतर आएगा? विशेष रूप से उत्पादन में env env?
यही होता है जब मैं
- मंचन में इसे चलाने यह लगभग 100% सीपीयू ले जाता है, जबकि
- शुरू कर कभी कभी यह बैठ जाती है और मैं इसका इस्तेमाल करने में सक्षम हूँ है
- * लेकिन के सबसे कई बार यह लटका ** और मुझे इसे मारना पड़ा।
मैं इस मुद्दे click here
संबंध में भी प्रश्न लॉग इन यह मैं 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
में क्या देखते हैं क्यों यह जवाहरात ताज़ा करने का प्रयास करता है है? क्या कॉन्फ़िगरेशन फ़ाइल में इससे बचने का कोई तरीका है?
यह है कि क्या मैं config में है/
# 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
अत्यधिक सराहना की कोई मदद unicorn_staging.rb है। अग्रिम धन्यवाद
क्या आपने कभी यह पता लगाया है? मुझे एक ही समस्या का अनुभव हुआ। – David
मैंने इस लाइन को हटा दिया और इसे कुछ हद तक काम किया लेकिन फिर भी धीमा after_fork do | सर्वर, कार्यकर्ता | ActiveRecord :: Base.establish_connection अंत –
लगता है कि उस रेखा को हटाने की तरह आपके यूनिकर्न उपप्रोसेसेस में साझा डेटाबेस हैंडल के साथ समस्याएं उत्पन्न होंगी। मैं प्रीलोड ऐप के साथ डेमॉन मोड में यूनिकॉर्न चलाने में सक्षम नहीं हुआ। एक बार जब मैंने प्रीलोड ऐप को अक्षम कर दिया, तो उसने समस्याएं पैदा कर दीं। – David