DC_SERVER(1) distcache DC_SERVER(1)
NAME
dc_server - Distributed session cache server
SYNOPSIS
dc_server -listen [options]
DESCRIPTION
dc_server runs a cache server and starts listening on a configurable network address for
connections. Incoming connections are expected to communicate using the distcache(8) pro-
tocol, and would typically be instances of dc_client(1) running on other machines.
OPTIONS
-daemon
After initialising, dc_server will detach from the parent process, close standard
file-descriptors, etc. If this flag is not set, dc_server will run in the foreground.
It is recommended to use this flag in combination with the pidfile flag to simplify
stopping and restarting services.
-user user
This switch will attempt to change user privileges of dc_server to the given user ID
after initialising its listening socket. On most systems, this can only work if
dc_server is started as the root user. It is important to note that the change of user
ID occurs after the listening socket is create. This ensures that the listening socket
is created with the most restrictive permissions, and that the ability to connect to
servers at run-time corresponds to the given user (rather than having unusual root
permissions on startup).
-listen address
Configures the address on which dc_server should listen for incoming connections. The
syntax is that defined by the libnal API. Some examples follow;
# Listen on port 9001 for all TCP/IPv4 interfaces
dc_server -listen IP:9001
# Listen on port 9001 on a specific TCP/IPv4 interface
dc_server -listen IP:192.168.0.1:9001
dc_server -listen IP:cacheserver.localnet:9001
# Listen on a unix domain socket in the /tmp directory
dc_server -listen UNIX:/tmp/cacheserver
-sockowner user
This switch is only useful when listening (see -listen) on unix domain sockets. It
will attempt to change ownership of the created socket file.
-sockgroup group
This switch is only useful when listening (see -listen) on unix domain sockets. It
will attempt to change group ownership of the created socket file.
-sockperms perms
This switch is only useful when listening (see -listen) on unix domain sockets. It
will attempt to change file permissions for the created socket file, and is specified
in the standard octal notation used for unix file permissions. Eg. to start dc_server
to run as the nobody user, listening on a unix domain socket that can only be con-
nected to by the root user or members of the dcclient group;
# dc_server -listen UNIX:/tmp/cacheserver -user nobody \
-sockgroup dcclient -sockperms 440
-sessions num
Specifies a maximum number of sessions that should be stored in the cache. All ses-
sions in a cache have an expiry time so that they will, if they have not been forcibly
removed before that time, be expired out of the cache. If it is desirable to allow
long session timeouts under normal situations yet protect against the session cache
growing without limit periods of high-load, this limit can provide the required bal-
ance. If the session cache reaches this limit, it will automatically rotate out those
sessions in the cache that are due to expire soonest. It is not (yet) possible to have
no limit at all, though a future version should support this by allowing the user to
specify zero.
The default value for this flag is 512.
-progress num
dc_server will, by default, log a line of output to stdout whenever there is cache
activity, but will make sure to do so no more often than once a second. If -progress
is specified, this will take precedence so that output will be emitted whenever num
operations have occurred since the last output, irrespective of how little time has
elapsed. The once-a-second logic remains behind this, so that if less than num opera-
tions has taken place but at least one second has passed, output will still be logged.
This flag has no effect if -daemon is used.
-pidfile path
This is a standard flag for many programs, and most useful in combination with -dae-
mon. When -pidfile is specified dc_server will write its process ID to a file at the
specified path upon successful initialisation. To use this path file to later kill the
running dc_server instance, use something like (where pidfile.pid is whatever path
was);
kill 'cat pidfile.pid'
-killable
The default behaviour of dc_server is to silently ignore SIGUSR1 and SIGUSR2 signals,
but with this switch enabled it will handle these signals and close down cleanly
(mainly useful for developers as an alternative to SIGKILL which is less useful for
debugging memory leaks).
-h, -help, -?
Any of these flags will cause dc_server to display a brief usage summary to the con-
sole and exit cleanly. Any other flags are ignored.
SEE ALSO
dc_client(1)
Distributed caching client proxy.
dc_snoop(1)
Distcache protocol analyser and debugging tool.
distcache(8)
Overview of the distcache architecture.
http://www.distcache.org/
Distcache home page.
AUTHOR
This toolkit was designed and implemented by Geoff Thorpe for Cryptographic Appliances
Incorporated. Since the project was released into open source, it has a home page and a
project environment where development, mailing lists, and releases are organised. For
problems with the software or this man page please check for new releases at the project
web-site below, mail the users mailing list described there, or contact the author at
.
Home Page: http://www.distcache.org
1.4.5 2004.03.23 DC_SERVER(1)
|