NAME

ObjStore::Process - ObjStore event loop integration

SYNOPSIS

# $app is a persistent hash of application info

ObjStore::Process->autonotify();

# exit if a server is already running
my $p = $$app{process};
ObjStore::Process->Exit if $p && $p->ping(1);

# store our process info
$$app{process} = ObjStore::Process->new($app);

# mainloop
ObjStore::Process->Loop();

DESCRIPTION

Implements dynamic transactions around an event loop. The Event module is required.

AUTONOTIFY

Enables automatic dispatch of notifications. I'm still trying to come up with an appropriate buzz phrase for this. "Active Database" sounds pretty slick, but it would really warm my heart to hear people discuss the possibilities of an "Open Objects DataBus" as I walk by in the hallway.

DEADLOCK AVOIDANCE STRATEGIES

Each database is open for update in only one process. All writes are directed via notifications to this database server process.

Any others?

PING PROTOCOL

TODO

Research unix-style daemonization code default stderr/stdout redirect (or Tee) to /usr/tmp

documentation