Forum: Ruby on Rails [ANN] slave-0.0.1

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Ara.T.Howard (Guest)
on 2006-06-09 02:08
(Received via mailing list)
URIS

   http://codeforpeople.com/lib/ruby/slave/
   http://rubyforge.org/frs/?group_id=1024&release_id=5631


SYNOPSIS

   the Slave class forks a process and starts a drb server in the child
using
   any object as the server.  the process is detached so it is not
required
   (nor possible) to wait on the child pid.  a Heartbeat is set up
between the
   parent and child processes so that the child will exit of the parent
exits
   for any reason - preventing orphaned slaves from running
indefinitely.  the
   purpose of Slaves is to be able to easily set up a collection of
objects
   communicating via drb protocols instead of having to use IPC.

   typical usage:

     obj = AnyClass::new

                                     #
     slave = Slave::new obj          # object becomes drb server in
another
                                     # process

     p slave.object                  # handle on drb object
     p slave.uri                     # uri of the drb object
     p slave.socket                  # unix domain socket path for drb
object
     p slave.psname                  # title shown in ps/top

     obj = slave.object

                                     #
     p obj.method                    # call a method on drb server in
another
                                     # process

   other usage:

   set the pulse_rate used for the Heartbeat

     slave = Slave::new MyClass::new, 'pulse_rate' => 10

   same

     Slave::pulse_rate = 10
     slave = Slave::new MyClass::new

   same

     ENV['SLAVE_PULSE_RATE'] = 10
     slave = Slave::new MyClass::new

   slaves may be configured via the environment, the Slave class, or via
the
ctor
   for object itself.  attributes which may be configured include

   * socket_creation_attempts
   * pulse_rate
   * psname
   * debug

INSTALL

   gem install slave


enjoy.

-a
--
suffering increases your inner strength.  also, the wishing for
suffering
makes the suffering disappear.
- h.h. the 14th dali lama
This topic is locked and can not be replied to.