Changeset 1331
- Timestamp:
- 01/28/08 14:31:15 (9 months ago)
- Files:
-
- trunk/lib/merb/server.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/merb/server.rb
r1252 r1331 33 33 34 34 if Merb::Config[:cluster] 35 delete_pidfiles36 35 Merb::Config[:port].to_i.upto(Merb::Config[:port].to_i+Merb::Config[:cluster].to_i-1) do |port| 37 puts "Starting merb server on port: #{port}" 38 start(port) 36 unless alive?(port) 37 delete_pidfiles(port) 38 puts "Starting merb server on port: #{port}" 39 start(port) 40 else 41 raise "Merb is already running on port: #{port}" 42 end 39 43 end 40 44 elsif Merb::Config[:daemonize] 41 delete_pidfiles(Merb::Config[:port]) 42 start(Merb::Config[:port]) 45 unless alive?(Merb::Config[:port]) 46 delete_pidfiles(Merb::Config[:port]) 47 start(Merb::Config[:port]) 48 else 49 raise "Merb is already running on port: #{port}" 50 end 43 51 else 44 52 trap('TERM') { exit } … … 50 58 def store_pid(pid,port) 51 59 File.open("#{Merb::Config[:merb_root]}/log/merb.#{port}.pid", 'w'){|f| f.write("#{Process.pid}\n")} 52 end 60 end 61 62 def alive?(port) 63 f = Merb::Config[:merb_root] + "/log/merb.#{port}.pid" 64 pid = IO.read(f).chomp.to_i 65 Process.kill(0, pid) 66 true 67 rescue 68 false 69 end 53 70 54 71 def kill(ports, sig=9)
