2012-07-24 13 views
6

मैं निष्पादन योग्य बनाने की कोशिश करता हूं, जो थिन के माध्यम से एक डिमन के रूप में एक सिनात्रा एप्लिकेशन शुरू करता है। मैं सिनात्रा app के साथ पतला आह्वान करने के लिए इस कोड का उपयोग कर रहा हूँ:पतला :: सर्वर # डिमननाइजेशन तुरंत बाहर निकलता है

>> Writing PID to tmp/thin.pid 
>> Exiting! 

सर्वर ठीक शुरू होता है जब मैं

कार्य करें:

#!/usr/bin/env ruby 

require 'thin' 
require 'app.rb' 

server = ::Thin::Server.new('127.0.0.1', 9999, App) 
server.log_file = 'tmp/thin.log' 
server.pid_file = 'tmp/thin.pid' 
server.daemonize 

यहाँ मैं प्राप्त लॉग उत्पादन होता है जब मैं स्क्रिप्ट को निष्पादित

server.start 

कोई सुझाव मैं कैसे ट्रैक करता हूं कि यह तुरंत क्यों निकलता है?

+0

1. है tmp फ़ोल्डर लिखने योग्य? 2. सर्वर ऑब्जेक्ट निर्माण भाग में ऐप या App.new? – Kashyap

उत्तर

4

daemonize का उपयोग केवल स्क्रिप्ट को एक डिमन बनाता है, यह वास्तव में सर्वर को प्रारंभ नहीं करता है। तुम अब भी start बाद में कॉल करने की आवश्यकता:

server.daemonize 
server.start 

लॉग फ़ाइल:

>> Writing PID to tmp/thin.pid 
>> Thin web server (v1.4.1 codename Chromeo) 
>> Maximum connections set to 1024 
>> Listening on 127.0.0.1:9999, CTRL+C to stop 
+0

एक आकर्षण की तरह काम करता है। आपका बहुत बहुत धन्यवाद! – benzimmer

+0

यह काफी पुरानी पोस्ट है, लेकिन मुझे 'server.daemonize' को कॉल करने के बाद स्पष्ट रूप से पतली शुरुआत नहीं करनी पड़ी – poorva

संबंधित मुद्दे