Search code examples
herokuruby-on-rails-3.1unicornhttp-streaming

HTTP Streaming on Heroku with Rails 3.1 & Unicorn


Inspired by the RailsCast on HTTP Streaming, I've decided to turn it on on my server. However, the listen 3000 :tcp_nopush => false line that Ryan suggests adding to my unicorn.rb doesn't play well with Heroku (they don't let you specify a port). Is streaming supported on Heroku, and how do I turn it on?


Solution

  • Heroku tells your application what port to listen on via the environment variable PORT. Check for this environment variable in your unicorn.rb.

    port = ENV["PORT"].to_i
    listen port, :tcp_nopush => false