 <p>It is actually possible to run multiple delayed_job workers.</p> <p>From <a href="http://github.com/collectiveidea/delayed_job" rel="nofollow noreferrer">http://github.com/collectiveidea/delayed_job</a>:</p> <pre><code># Runs two workers in separate processes. $ RAILS_ENV=production script/delayed_job -n 2 start $ RAILS_ENV=production script/delayed_job stop </code></pre> <p>So, in theory, you could just execute:</p> <pre><code>$ RAILS_ENV=production script/delayed_job -n 50 start </code></pre> <p>This will spawn 50 processes, however I'm not sure whether that would be recommended depending on the resources of the system you're running this on.</p> <hr> <p>An alternative option would be to use <a href="http://www.rubycentral.com/pickaxe/tut_threads.html" rel="nofollow noreferrer">threads</a>. Simply spawn a new thread for each of your jobs.</p> <p>One thing to bear is mind with this method is that <code>ActiveRecord</code> is not thread-safe. You can make it thread-safe using the following setting:</p> <pre><code>ActiveRecord::Base.allow_concurrency = true </code></pre>