我在(ruby/rails) heroku上有一个应用程序。它运行一个web和一个worker(例如)我希望能够告诉什么"类型"的动态下运行的应用程序。
我想这是一个简单的事情,但我看不到任何告诉我如何告诉。
我不知道是否有更优雅的方法来做到这一点,但是您可以在Procfile中设置一个环境变量:
web: bundle exec ... PROC_TYPE=web
worker: bundle exec ... PROC_TYPE=worker
然后在你的rails代码中,你可以检查ENV['PROC_TYPE']
编辑:更详细的Procfile示例,典型的rails应用程序:
web: bundle exec rails server -p $PORT PROC_TYPE=web
worker: bundle exec rake jobs:work PROC_TYPE=worker