Search code examples
ruby-on-railsnginxresqueunicornworker

What "workers" really are?


I feel lost.

Nginx has it's own "Worker" processes,

Unicorn has it's own "Worker" settings,

Resque has it's own "Workers".

Unicorn's settings should be related to Nginx's or Resque's I guess?

I really searched for a clue but didn't got any.

Are all of these "workers" same?

If not can you briefly tell what are they?


Solution

  • Nginx - Nginx is the web server that gets the incoming requests and serves to unicorns on request. Unicorn - Each unicorn worker loads a separate Rails environment(Worker).
    Resque - Each Resque worker loads a separate Rails environment(Worker).

    The purpose of Unicorn and Resque are different.
    Unicorn serves the web requests.
    Resque gets background jobs from Redis and processes it