Download List

Project Description

Unicorn is a Unix and LAN/localhost-optimized fork of the Mongrel HTTP server. It takes full advantage of functionality exclusive to Unix-like operating systems. It will reap and restart workers that die from broken apps, and there is no need to manage multiple processes yourself. Load balancing is done entirely by the operating system kernel. Requests never pile up behind a busy worker. The server does not care if your application is thread-safe or not, as workers all run within their own isolated address space and only serve one client at a time. All Rack applications are supported along with pre-Rack versions of Ruby on Rails via a Rack wrapper. It also supports atomic log cycling, nginx-style binary re-execution without losing connections, before_fork and after_fork hooks, and optional copy-on-write-friendly memory management.

System Requirements

System requirement is not defined
Information regarding Project Releases and Project Resources. Note that the information here is a quote from Freecode.com page, and the downloads themselves may not be hosted on OSDN.

2009-07-09 19:39
0.9.1

Minor cleanups were made. FD_CLOEXEC is now set on accepted listen sockets instead of relying on the flag to be inherited across accept. This release is not recommended for production use.
Tags: Unstable

2009-07-09 19:39
0.8.2

Socket handling bugfixes and socket-related usability and performance tweaks. The server no longer trusts that FD_CLOEXEC is inherited across accept(). Minor tweaks were backported from version 0.9.0 to make non-graceful restarts/upgrades go more smoothly.
Tags: Stable

2009-07-02 19:14
0.9.0

"Transfer-Encoding: chunked" bodies in requests are now supported. Rack applications reading input bodies
get that data streamed off to the client socket on an as-needed basis. This allows the application to do things like upload progress notification and even tunneling of arbitrary stream protocols via bidirectional chunked encoding.
Tags: Unstable

2009-05-30 02:03
0.8.1

This release features safer, more descriptive timeout handling, more consistent reload behavior, and is a miniscule amount faster on "Hello World" benchmarks.

2009-05-27 17:42
0.8.0

The RubyGem now has a hard dependency on Rack. Minor performance improvements and code cleanups were done. If RubyGems are in use, the Gem index
is refreshed when SIGHUP is issued.

Project Resources