Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
DC_SERVER(1)			    distcache			    DC_SERVER(1)

NAME
     dc_server - Distributed session cache server

SYNOPSIS
     dc_server -listen <address> [options]

DESCRIPTION
     dc_server	runs  a cache server and starts listening on a configurable net-
     work address for connections. Incoming connections are expected to communi-
     cate using the distcache(8) protocol, 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  im-
	 portant  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  hav-
	 ing 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  exam-
	 ples 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 connected 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  sessions 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  ver-
	 sion 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 oper-
	 ations 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 combina-
	 tion with -daemon. When -pidfile is specified dc_server will write  its
	 process  ID to a file at the specified path upon successful initialisa-
	 tion. To use this path file to later kill  the  running  dc_server  in-
	 stance, 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 sig-
	 nals and close down cleanly (mainly useful for developers as an  alter-
	 native 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 sum-
	 mary to the console 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  geoff@ge-
     offthorpe.net.

     Home Page: http://www.distcache.org

1.5.1				   2004.10.19			    DC_SERVER(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dc_server&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help