Back to home page

Enduro/X

 
 

    


0001 TPCACHED(8)
0002 ===========
0003 :doctype: manpage
0004 
0005 
0006 NAME
0007 ----
0008 tpcached - Enduro/X cache maintenance daemon
0009 
0010 
0011 SYNOPSIS
0012 --------
0013 *tpcached* ['OPTIONS']
0014 
0015 
0016 DESCRIPTION
0017 -----------
0018 *tpcached* is daemon process started by client process monitor (*cpmsrv*) 
0019 (it needs to be registered in '<clients>' section 
0020 for Enduro/X application domain). Only one copy of *tpcached* can be stated
0021 per cache database. If no CC tags are used, then one copy shall be run over the
0022 app domain. If CC tags are used for cache configuration, then multiple *tpcached*
0023 daemons can be started, per CC tag. The daemon performs following functions:
0024 
0025 . Processes any cache databases if *expiry* flag is present. The daemon tests
0026 if records add time (UTC) plus expiry seconds are less than current system UTC
0027 time, then record is assumed expired and is deleted.
0028 
0029 . Process any cache databases for which *clrnosvc* flag is present. In this case
0030 daemon tests that if cached record's service name is not advertised in shared memory,
0031 then record is deleted from cache.
0032 
0033 . Process any limited cache databases having flags *lru* (last recently used),
0034 *hits* (number of record hits) or *fifo* (first in, first out) order. The process
0035 copies all records to allocated linear array and performs qsort to find records
0036 which are beyond the limit. If there are any such records over *limit* value,
0037 then those records are deleted. If duplicates were allowed for
0038 database (*timesync* flag set) then for limits mode, during the scanning, duplicate
0039 records are deleted too.
0040 
0041 . Process any database for which *scandup* flag is set. During this mode any
0042 duplicate records found are deleted.
0043 
0044 In case if cluster operations are configured and flag *bcastdel* is present, then
0045 in case of record removal, this event is broadcast to Enduro/X event server which
0046 then delivers the notification of record removal to all machines. The event
0047 is not sent in case if duplicate record is removed, as duplicate scan can be
0048 done by *tpcached* on other machine.
0049 
0050 KEYGROUP OPERATIONS
0051 -------------------
0052 *tpcached* can process any database. This can be normal service data storage
0053 databases or keygroup storage/keyitems storage - 
0054 used for linking some kind of records into single group (for example user
0055 is doing paging over its statement records). Thus for example 
0056 the group is user id and items are pages. In this case expiry and 
0057 other limits can be applied to keygroup or key items databases too. 
0058 In case if key item (some page expires) for db with *keyitems* flag, 
0059 then the item is removed from group too. In case if group 
0060 expires (database with *keygroup* flag), then all linked records are
0061 removed from keyitems database and the group record by it self is removed too.
0062 In case of group expire, only group key is broadcast to other nodes (if
0063 configured so).
0064 
0065 
0066 OPTIONS
0067 -------
0068 [*-i* 'INTERVAL_SLEEP_TIME']::
0069 'INTERVAL_SLEEP_TIME' is number of seconds for cache daemon to sleep between scans.
0070 The default value is *5* (seconds).
0071 
0072 EXIT STATUS
0073 -----------
0074 *0*::
0075 Success
0076 
0077 *-1*::
0078 Failure
0079 
0080 
0081 CONFIGURATION EXAMPLE
0082 ---------------------
0083 See *atmitest/test048_cache/ndrxconfig-dom1.xml* for configuration example.
0084 
0085 BUGS
0086 ----
0087 Report bugs to support@mavimax.com
0088 
0089 SEE ALSO
0090 --------
0091 *ex_env(5)* *ex_adminman* *tpcachebtsv(8)* *tpcachesv(8)* *xadmin(8)*
0092 
0093 COPYING
0094 -------
0095 (C) Mavimax, Ltd
0096