The ``platformbased'' registry protocol

The platformbased registry is based on another active module working as a name server. It accepts queries for publishing and locating other active module instances. The address of this registry active moduel is given by the --reg-addr option.

Example name server

See examples/nameserver/nameserver.pl for an example implementation of a name server. In this example the addresses of active modules are saved by the name server in a persistent database (subdirectory actmod_db of the directory where you start it). This allows to restart the server right away if it dies (since it saves its state). This directory should be cleaned up regularly of addresses of active modules which are no more active. To do this, stop the server ---by killing it (its pid is in PATH/FILE), and restart it after cleaning up the files in the above mentioned directory.

The name server has to be compiled as an active module itself:

ciaoc nameserver

It has to be started in the server machine before the application and its active modules are compiled.


Usage and interface

  • Library usage:
    :- use_module(library(actmod/regp_platformbased)).

Documentation on multifiles

PREDICATE$curr_mod/1
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATEfnct.prop/2
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATEgsusp.guard/4
No further documentation available for this predicate. The predicate is multifile.

PREDICATEgsusp.run/2
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATEasync.run/2
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATE$dmod_src/2
No further documentation available for this predicate. The predicate is multifile.

PREDICATE$dmod_prop/2
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATE$dmod_proxy/2
No further documentation available for this predicate. The predicate is multifile.

PREDICATE$actmod_exe/3
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

PREDICATEqprot.dec/4
No further documentation available for this predicate. The predicate is multifile.

PREDICATEqprot.enc/3
No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

No further documentation available for this predicate. The predicate is multifile.

Documentation on imports

This module has the following direct dependencies: