Will running jobs in parallel with multiple workers cost more?
Not while they're processing jobs, because dyno fees are pro-rated to the second.
For example: let's say you have 60 jobs queued up, each of which takes 1 minute to process. This comes down to about 1 hour of background processing time if you're running a single worker dyno.
Keep in mind for this example:
- Heroku dyno fee: $0.035 / hour
- Job processing time: 1 minute / job
1 worker dyno process:
$0.035 * 60 jobs = $0.035 (processing time: 1 hour)
10 worker dyno processes:
$0.035 * 60 jobs = $0.035 (processing time: 6 minutes)
As you can see, we've significantly increased throughput (by a factor of 10) without increasing our Heroku fees.