What is the Ruby web server?

Historically, I used Thin as an application server (for Ramaze applications, but it was easy for Rails) that receives requests from the Nginx web server.

Does anyone have experience using Thin / Mongrel / anything else for Ruby server applications on a web server? I try to keep things slender and fast.

+4
source share
6 answers

I am a big fan of Tin. It is fast (faster than a passenger), does not use much memory (less than a passenger) and is not too difficult to configure and maintain.

+3
source

I find Passenger that will be incredibly easy to set up. It works in conjunction with Apache or Nginx, and it should be able to serve any application or infrastructure on the rack.

According to its authors and many other users, it should be very memory friendly when used in conjunction with Ruby Enterprise Edition , at least to host multiple Rails applications.

Personally, I think the biggest advantages are:

  • He is really dead, easy to configure and works in the mod_php style.
  • It lowers privileges and runs my Rails application as a regular user.

The latter is pretty cool, and I didn't even notice it right away. I simply set up a user account specifically for the application, unpacked the application in the home directory, and then went through the Passenger setup steps. Only after I looked at the list of processes did I notice that it also lost privileges for the user.

+7
source

Lighttpd w / Fast-CGI was nice to me (and almost as thin as he was). mod_ruby, not so much. Mongrel is cool for development, but I refuse to use it in production.

With a sufficiently large cluster, the impact of the web server is minimal.

+2
source

Mongrel is a very stable and reliable web server. Many other servers use mongrel code anyway. I found that performance deteriorates linearly with increasing load and not exponentially, as happens with a passenger

+1
source

I use Unicorn and Thin with Ruby, Sinatra and gems. Works great for me. Unicorn does not support Websockets, so use Thin.

0
source

I use a thin, unicorn and puma server. unicorn and puma do not support websockets. I like sinatra instead of rails or other bits.

0
source

Source: https://habr.com/ru/post/1299839/


All Articles