/usr/share/doc/ruby-raemon/README is in ruby-raemon 0.3.0+git.2012.05.18.b78eaae57c-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | Raemon
======
Raemon is a Ruby framework for building daemons. It's designed for writing
master/worker pre-forking servers running on UNIX. The library has been
tested on both 1.8.7 and 1.9.2 and carries no dependencies outside of the
Ruby core. More to come.
By: Peter Kieltyka
Copyright (c) 2007-2011 Nulayer Inc. All rights reserved.
Acknowledgements:
Lots of code/ideas borrowed from the Unicorn project by Eric Wong to implement
signals, workers, and the heartbeat.
Usage
=====
Raemon supports two modes of use: as a lightweight master/worker library
or as a full daemon server.
Lightweight master/worker library
---------------------------------
Simply mixin the Raemon::Worker module into any class and implement the
'start' and 'execute' methods.
start - called when the worker process is first created
execute - called to begin the execution of the worker
The Raemon::Worker module also provides a 'shutting_down?' helper method
that should be tested between iterations in the worker loop to gracefully
shutdown the worker.
To start the workers use the Raemon::Master class.
See examples/test.rb and examples/beanstalk.rb for how the library works
in this scenario.
Also, you can find an evented Beanstalk example in examples/evented.rb.
Daemon server
-------------
Raemon::Server provides tools that helps build daemon applications
that feel like a Ruby on Rails application. See examples/sampled.
Installation
============
$ gem install raemon
From source:
$ git clone git://github.com/nulayer/raemon.git
$ cd raemon && rake install
TODO
====
1. Specs
2. Create a UNIX socket connection between the master and workers
3. Setup a heartbeat between the master and the workers
4. Write a daemon generator (as examples/sampled)
5. Instead of spawning processes, use GIL-free VM and native threads
Thanks
======
Raemon was influenced by the following projects:
unicorn - http://github.com/defunkt/unicorn
servolux - http://github.com/TwP/servolux
daemon_kit - http://github.com/kennethkalmer/daemon-kit
rails - http://github.com/rails/rails
|