É comum usar um serviço como o Foreman para gerenciar serviços executados em seu servidor.
Heroku permite gerenciar serviços com um Procfile.
A questão é que geralmente é uma prática ter um desses arquivos para desenvolvimento e produção.
Procfile
redis: redis-server restart
resque: env bundle exec rake jobs:work
elasticsearch: elasticsearch -f
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
resque_scheduler: bundle exec rake resque:scheduler
Alguns desses serviços não são necessários no heroku e acabarão aparecendo como trabalhadores não utilizados.
Agora estamos fazendo isso:
Procfile.dev
redis: redis-server restart
resque: env bundle exec rake jobs:work
elasticsearch: elasticsearch -f
foreman: foreman start -f Procfile
Procfile
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
resque_scheduler: bundle exec rake resque:scheduler
Assim, no heroku, veremos apenas os trabalhadores que usamos.
Tive a ideia a partir deste post: http://stackoverflow.com/questions/11592798/use-different-procfile-in-development-and-production