RAA - unicorn/0.1.0

unicorn / 0.1.0

Short description: UNIX + LAN/localhost-only fork of Mongrel
Category: Library/Web
Status: experimental
Created: 2009-03-11 06:03:37 GMT
Last update: 2009-03-11 06:03:37 GMT
Owner: Unicorn hackers (Projects of this owner)
Homepage: http://unicorn.bogomips.org
Download: http://rubyforge.org/frs/?group_id=1306
License: Ruby's
Dependency:
None
Description:

Unicorn: UNIX + LAN/localhost-only fork of Mongrel

Only run this behind a full-HTTP-request-buffering reverse proxy if you’re serving slow clients. That said, nginx is the only reverse proxy we know of that meets this requirement.

Features

  • process management: Unicorn will reap and restart workers that die because of broken apps and there is no need to manage multiple processes yourself.
  • does not care if your application is thread-safe or not, workers all run within their own isolated address space and only serve one client at a time…
  • able to listen on multiple interfaces, including UNIX sockets, each worker process can also bind to a private port via the after_fork hook for easy debugging.
  • supports all Rack applications
  • nginx-style binary re-execution without losing connections. You can upgrade unicorn, your entire application, libraries and even your Ruby interpreter as long as unicorn is installed in the same path.
  • before_fork and after_fork hooks in case your application has special needs when dealing with forked processes.
  • builtin log rotation via USR1 signal
  • Ruby 1.9-compatible (at least the test cases all pass :>)

License

Unicorn is copyright 2009 Eric Wong and contributors. It is based on Mongrel:

Mongrel is copyright 2007 Zed A. Shaw and contributors. It is licensed under the Ruby license and the GPL2. See the include LICENSE file for details.

Install

The library consists of a C extension so you’ll need a C compiler or at least a friend who can build it for you.

Finally, the source includes a setup.rb for those who hate RubyGems.

You can get the source via git via the following locations:

  git://git.bogomips.org/unicorn.git

  http://git.bogomips.org/unicorn.git

Usage

Unicorn will look for the config.ru file used by rackup in APP_ROOT. Optionally, it can use a config file specified by the —config-file/-c command-line switch.

Unicorn should be capable of running all Rack applications. Since this is a preforking webserver, you do not have to worry about thread-safety of your application or libraries. However, your Rack application may use threads internally (and should even be able to continue running threads after the request is complete).

Contact

Newsgroup and mailing list coming, or it’ll be a part of the Mongrel project…

Email Eric Wong at normalperson@yhbt.net for now.

Versions: [4.2.0 (2012-01-28)] [4.1.1 (2011-08-25)] [4.1.0 (2011-08-20)] [4.0.1 (2011-06-29)] [4.0.0 (2011-06-27)] [3.7.0 (2011-06-09)] [3.6.2 (2011-04-30)] [1.1.7 (2011-04-30)] [3.6.1 (2011-04-26)] [3.6.0 (2011-04-21)] [3.5.0 (2011-03-15)] [3.4.0 (2011-02-04)] [3.3.1 (2011-01-07)] [1.1.6 (2011-01-07)] [3.3.0 (2011-01-05)] [3.2.1 (2010-12-26)] [3.1.0 (2010-12-09)] [3.0.1 (2010-12-03)] [3.0.0 (2010-11-20)] [3.0.0pre2 (2010-11-19)] [2.0.1 (2010-11-17)] [3.0.0pre1 (2010-11-17)] [2.0.0 (2010-10-27)] [1.1.5 (2010-10-27)] [1.0.2 (2010-10-27)] [2.0.0pre3 (2010-10-09)] [2.0.0pre2 (2010-10-07)] [2.0.0pre1 (2010-10-06)] [1.1.4 (2010-10-04)] [1.1.3 (2010-08-28)] [1.0.1 (2010-07-13)] [1.1.2 (2010-07-13)] [1.1.1 (2010-07-11)] [1.1.0 (2010-07-08)] [1.0.0 (2010-06-17)] [0.991.0 (2010-06-11)] [0.990.0 (2010-06-08)] [0.99.0 (2010-05-06)] [0.98.0 (2010-05-05)] [0.97.1 (2010-04-19)] [0.97.0 (2010-03-01)] [0.96.1 (2010-02-13)] [0.96.0 (2010-01-08)] [0.95.3 (2009-12-21)] [0.95.2 (2009-12-07)] [0.95.1 (2009-11-21)] [0.95.0 (2009-11-15)] [0.94.0 (2009-11-05)] [0.93.5 (2009-10-29)] [0.93.4 (2009-10-27)] [0.93.3 (2009-10-09)] [0.93.2 (2009-10-07)] [0.93.1 (2009-10-03)] [0.93.0 (2009-10-02)] [0.92.0 (2009-09-18)] [0.91.0 (2009-09-04)] [0.90.0 (2009-08-17)] [0.8.4 (2009-08-08)] [0.8.3 (2009-07-20)] [0.9.2 (2009-07-20)] [0.9.1 (2009-07-09)] [0.8.2 (2009-07-09)] [0.9.0 (2009-07-01)] [0.8.1 (2009-05-28)] [0.8.0 (2009-05-27)] [0.7.1 (2009-05-22)] [0.7.0 (2009-04-25)] [0.6.0 (2009-04-25)] [0.5.4 (2009-04-24)] [0.5.3 (2009-04-17)] [0.5.2 (2009-04-17)] [0.5.1 (2009-04-17)] [0.5.0 (2009-04-17)] [0.4.2 (2009-04-04)] [0.2.3 (2009-03-25)] [0.2.2 (2009-03-23)] [0.2.1 (2009-03-19)] [0.1.0 (2009-03-11)]

Edit this project (for project owner)

back to RAA top