extension=apcu.so

;; NOTE: parameters name space is "apc" to be compatible with APC ones

;; apc.enabled can be set to 0 to disable APCu.
;; (Default: 1)
apc.enabled=1

;; Mostly for testing and debugging. Setting this enables APCu
;; for the CLI version of PHP. Normally you wouldn't want to
;; create, populate and tear down the APCu cache on every CLI
;; request, but for various test scenarios it is handy to be
;; able to enable APCu for the CLI version of APCu easily.
;; (Default: 0)
apc.enable_cli=0

;; Sets the path to text files containing caches to load
;; from disk upon intiialization of APCu.
;; preload_path should be a directory where each file follows
;; $key.data where $key should be used as the entry name and
;; the contents of the file contains serialized data to use
;; as the value of the entry.
;; (Default: null)
;;apc.preload_path=i

;; The size of each shared memory segment in MB. 
;; By default, some systems (including most BSD
;; variants) have very low limits on the size of a
;; shared memory segment. M/G suffixes must be used.
;; (Default: 32M)
apc.shm_size=128M

;; The number of shared memory segments to allocate
;; for the compiler cache. If APCu is running out of
;; shared memory but apc.shm_size is set as high as
;; the system allows, you can try raising this value.
;; Setting this to a value other than 1 has no effect
;; in mmap mode since mmap'ed shm segments don't have
;; size limits.
;; (Default: 1)
apc.shm_segments=1

;; The number of seconds a cache entry is allowed to idle in a slot
;; in case this cache entry slot is needed by another entry.
;; Leaving this at zero means that APCu's cache could potentially
;; fill up with stale entries while newer entries won't be cached. 
;; (Default: 0)
apc.ttl=7200

;; The number of seconds that a cache entry may remain on the
;; garbage-collection list. This value provides a fail-safe in the
;; event that a server process dies while executing a cached source file;
;; if that source file is modified, the memory allocated for the old 
;; version will not be reclaimed until this TTL reached. Set to zero 
;; to disable this feature.
;; (Default: 3600)
; apc.gc_ttl=0


;; If you begin to get low on resources, an expunge of the cach
;; is performed if it is less than half full. This is not always
;; a suitable way of determining if an expunge of the cache
;; should be performed.
;; apc.smart allows you to set a runtime configuration value which
;; is used to determine if an expunge should be run
;; if (available_size < apc.smart * requested_size)
;; apc_cache_expunge()
;; (Default: 0)
;apc.smart=0

;; A "hint" about the number variables expected in the cache.
;; Set to zero or omit if you're not sure.
;; (Default: 4096)
;apc.user_entries_hint=0

;; If compiled with MMAP support by using --enable-mmap
;; this is the mktemp-style file_mask to pass to the
;; mmap module for determing whether your mmap'ed memory
;; region is going to be file-backed or shared memory
;; backed.  For straight file-backed mmap, set it to
;; something like /tmp/apc.XXXXXX (exactly 6 X's).
;; To use POSIX-style shm_open/mmap put a ".shm"
;; somewhere in your mask.  eg.  "/apc.shm.XXXXXX"
;; You can also set it to "/dev/zero" to use your 
;; kernel's /dev/zero interface to anonymous mmap'ed 
;; memory.  Leaving it undefined will force an 
;; anonymous mmap.
;; (Default: "")
apc.mmap_file_mask=/dev/zero


;; On very busy servers whenever you start the server or
;; modify files you can create a race of many processes
;; all trying to cache the same data at the same time.
;; By default, APCu attempts to prevent "slamming" of a key.
;; A key is considered "slammed" if it was the last key set,
;; and a context other than the current one set it ( ie. it
;; was set by another process or thread )
;; Note:
;; APCu does not store enough information to
;; catch every occurence, sufficient none the less.
;; (Default: 1)
;apc.slam_defense=1


;; Defines which serializer should be used. Default is the
;; standard PHP serializer. Other can be used without having
;; to re compile apc, like igbinary for example.
;; (Default: igbinary)
;apc.serializer=igbinary


;; ----------------------------------------------------------
;; The remaining entries concern file upload progress support

;; RFC1867 File Upload Progress hook handler is only available
;; if you compiled APCu against PHP 5.2.0 or later.  When enabled
;; any file uploads which includes a field called
;; APCu_UPLOAD_PROGRESS before the file field in an upload form
;; will cause APCu to automatically create an upload_<key>
;; user cache entry where <key> is the value of the
;; APCu_UPLOAD_PROGRESS form entry.
;;
;; Note that the file upload tracking is not threadsafe at this
;; point, so new uploads that happen while a previous one is
;; still going will disable the tracking for the previous.
;; (Default: 0)
;apc.rfc1867=0

;; Key prefix to use for the user cache entry generated by
;; rfc1867 upload progress functionality.
;; (Default: "upload_")
;apc.rfc1867_prefix="upload_"

;; Specify the hidden form entry name that activates APCu upload
;; progress and specifies the user cache key suffix.
;; (Default: "APCu_UPLOAD_PROGRESS")
;apc.rfc1867_name=APCu_UPLOAD_PROGRESS

;; The frequency that updates should be made to the user cache
;; entry for upload progress.  This can take the form of a
;; percentage of the total file size or a size in bytes
;; optionally suffixed with 'k', 'm', or 'g' for kilobytes,
;; megabytes, or gigabytes respectively (case insensitive).
;; A setting of 0 updates as often as possible, which may cause
;; slower uploads.
;; (Default: 0)
;apc.rfc1867_freq=0


