Files

19 lines
666 B
Plaintext
Executable File

require_relative '../app'
# A hard cap on the total number of live WebSocket connections this
# process will hold open at once (across every post's /cable stream
# combined), distinct from PostActivityChannel::MAX_VIEWERS_PER_POST which
# only bounds a single stream - without this, enough popular posts could
# still exhaust the process's file descriptors even though no individual
# post ever hits its own per-stream limit.
MAX_WEBSOCKET_CONNECTIONS = 2000
server = Prism::Server.new(
Blog,
port: (ARGV[0] || 3000).to_i,
max_websocket_connections: MAX_WEBSOCKET_CONNECTIONS
).start
puts "listening on #{server.url}"
trap('INT') { server.stop; exit }
sleep