Anonymous ID: cca7cd March 12, 2019, 10:32 a.m. No.5641927   🗄️.is 🔗kun   >>1940

Re: Unicorns

 

Unicorn is a Rack HTTP server to serve Ruby web applications on UNIX environment. It is optimised to be used with nginx. It is based on Mongrel 1.1.5.

 

Contents

1 Architecture

2 Reception and use

3 References

4 External links

Architecture

Unicorn uses a master/worker architecture, where a master process forks to worker processes and control them. The application runs in a single thread.[1]

 

Reception and use

Unicorn was considered as “one of the most popular servers for Rails”.[2][1]

 

Twitter starts to test Unicorn in 2010.[3]

 

This server is shipped with Discourse. Their system administration expert Sam Saffron noted Unicorn was reliable, as it reaps unresponsive workers.[4] GitLab also uses Unicorn.[5]

 

Unicorn inspired other projects like Gunicorn, a fork to run Python applications.

 

As of 2018, projects tend to favour Puma[citation needed]. The Heroku hosting provider recommends since 2015 to migrate from Unicorn to Puma.[6]. Deliveroo published a benchmark comparing the two servers and concluded “Puma performs better than Unicorn in all tests that were either heavily IO-bound or that interleaved IO and CPU work”, but than Unicorn was still slightly better performing in pure CPU situations.[7]

 

https://en.wikipedia.org/wiki/Unicorn_(web_server)