alternative php cache 安装,Alternative PHP Cache

孙熠彤
2023-12-01

apc.enabled

booleanapc.enabled can be set to 0 to disable APC. This is

primarily useful when APC is statically compiled

into PHP, since there is no other way to disable

it (when compiled as a DSO, the extension

line in php.ini can just be commented-out).apc.shm_segments

integerThe number of shared memory segments to allocate

for the compiler cache. If APC is running out of

shared memory but you have already set

apc.shm_size as high as your system allows, you

can try raising this value.apc.shm_size

integerThe 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.apc.optimization

integerThe optimization level. Zero disables the

optimizer, and higher values use more aggressive

optimizations. Expect very modest speed

improvements. This is experimental.apc.num_files_hint

integerA "hint" about the number of distinct source files

that will be included or requested on your web

server. Set to zero or omit if you're not sure;

this setting is mainly useful for sites that have

many thousands of source files.apc.ttl

integerThe 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 your cache could potentially fill up

with stale entries while newer entries won't be

cached.apc.gc_ttl

integerThe number of seconds that a cache entry may

remain on the garbage-collection list. This value

provides a failsafe 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.apc.cache_by_default

booleanOn by default, but can be set to off and used in

conjunction with positive apc.filters so that files

are only cached if matched by a positive filter.apc.filters

stringA comma-separated list of POSIX extended regular

expressions. If any pattern matches the source

filename, the file will not be cached. Note that

the filename used for matching is the one passed

to include/require, not the absolute path. If the

first character of the expression is a + then the

expression will be additive in the sense that any

files matched by the expression will be cached, and

if the first character is a - then anything matched

will not be cached. The - case is the default, so

it can be left off.apc.mmap_file_mask

stringIf 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 Xs).

To use POSIX-style shm_open/mmap put a .shm

somewhere in your mask. e.g. /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.apc.slam_defense

integerOn 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 file at the same time.

This option sets the percentage of processes that will

skip trying to cache an uncached file. Or think of it

as the probability of a single process to skip caching.

For example, setting apc.slam_defense

to 75 would mean that there is

a 75% chance that the process will not cache an uncached

file. So, the higher the setting the greater the defense

against cache slams. Setting this to 0

disables this feature.apc.file_update_protection

integerWhen you modify a file on a live web server you really

should do so in an atomic manner. That is, write to a

temporary file and rename (mv) the file into its

permanent position when it is ready. Many text editors, cp, tar and

other such programs don't do this. This means that there

is a chance that a file is accessed (and cached) while it

is still being written to. This apc.file_update_protection

setting puts a delay on caching brand new files. The

default is 2 seconds which means that if the modification

timestamp (mtime) on a file shows that it is less than 2

seconds old when it is accessed, it will not be cached.

The unfortunate person who accessed this half-written file

will still see weirdness, but at least it won't persist.

If you are certain you always atomically update your files

by using something like rsync which does this correctly, you

can turn this protection off by setting it to 0. If you

have a system that is flooded with io causing some update

procedure to take longer than 2 seconds, you may want to

increase this a bit.apc.enable-cli

integerMostly for testing and debugging. Setting this enables APC

for the CLI version of PHP. Normally you wouldn't want to

create, populate and tear down the APC cache on every CLI

request, but for various test scenarios it is handy to be

able to enable APC for the CLI version of APC easily.

 类似资料: