Caching in Sitellite
Sitellite features all three forms of caching, which you can turn on or
off as needed, making Sitellite's performance caching highly flexible
and customizable for the widest variety of potential uses.
Whole-page caching
Sitellite features whole-page caching built directly into the content
server, so that all you need to do to enable it is change a few
settings in inc/conf/config.ini.php and you're good to go. Here
is an overview of the specific cache settings in config.ini.php.
The comments from config.ini.php are left in, as they provide
sufficient documentation for each of the settings themselves.
[Cache]
; This sets the page-level cache duration. The value is specified in
; seconds, and 0 means no page-level caching. Note: Page-level caching
; should only be used on pages that can't ever contain user-specific
; data. If this rule is not kept, then data specific to one user could
; end up in the hands of another. This means that page-level caching
; is not always the right choice in all circumstances.
duration = 0
; This is the location to store the page-level cache. It may be
; a directory name (ie. cache/pages), mod:proxy, which will not actually
; cache the pages but instead set the proper HTTP headers for a
; proxy/cache server or the visitors' browsers to cache the page for us,
; or bdb:path/to/page_store.db, which specifies the path to a Berkeley
; DB file which can contain the pages as key/value pairs in a single
; file and use a BDB daemon to retrieve them. BDB may prove faster than
; the filesystem at performing lookups because it can keep the data
; in memory between requests. BDB stores require PHP to be configured
; with the DBA extension and linked against a Berkeley DB3 installation
; (ie. --with-db3). For more information, see php.net/dba.
location = store:cache/pages:sitellite_cache_file_list
; This is the location to store proxy cache "tag" files, which are empty
; files that are created and updated on creation and re-creation of
; a mod:proxy cached page. The modification times of these files are
; used to determine whether or not to regenerate the file or simply
; send the appropriate "still good" HTTP headers instead. Specified
; as a directory (ie. cache/proxy).
proxystore = cache/proxy
; This is a comma-separated list (no spaces) of paths that qualify for
; page-level caching. An asterisk is a wildcard character that basically
; says "anything goes."
; Examples:
; /index,/index/news,/index/news/*
cacheable = ""
; This sets the per-query cache duration. The value is specified in
; seconds, and 0 means no per-query caching. Per-query caching caches
; individual database queries, and must be specified on a per-query
; basis (see saf.Database.Query in DocReader or saf/docs for more info).
querycaching = 0
; This is the location to store the per-query cache. It may be any
; valid directory name (ie. cache/queries). In this directory, a few
; Berkeley DB files will be created, one called query_store.db and
; one for each query being cached.
qcachelocation = cache/queries
Next: Partial-page cachingPage 1:
Caching in General
Page 2:
Caching in Sitellite
Page 3: Partial-page caching
Page 4: Query-level caching
Home
More Performance Stories