def start(port, cluster=nil)
@port = port
@cluster = cluster
if @cluster
@port.to_i.upto(@port.to_i + @cluster.to_i-1) do |port|
unless alive?(port)
remove_pid_file(port)
puts "Starting merb server on port: #{port}"
daemonize(port)
else
raise "Merb is already running on port: #{port}"
end
end
elsif Merb::Config[:daemonize]
unless alive?(@port)
remove_pid_file(@port)
daemonize(@port)
else
raise "Merb is already running on port: #{port}"
end
else
trap('TERM') { exit }
trap('INT') { puts "\nExiting"; exit }
BootLoader.run
Merb.adapter.start(Merb::Config.to_hash)
end
end