/
Tuning APC
Tuning APC
Configuration
- Old opcodes stay in cache until all old requests satisfied. Leave headroom (up to 2x normal size).
- Add hints
- Set
apc.stat = 0
- But have to restart server to get new files
- With source control, use
apc.stat_ctime = 1
ifapc.stat = 1
.
- Compile using spin locks. Use pthreads if spins fail.
Ideas
- Try experimental functions
apc_bindump_file()
andapc_binload_file()
. - On deployment, serialize the cache and load in the serialized cache to every server while under maintenance.
- Use
apc_compile_file()
to prime/update the cache. - User variable cache:
apc_fetch()
, but must serialize to use memcached. - Check if latest APC uses double-linked lists for less performance trouble with fragmentation.
- Check out lazy loading (a PHP 5.3 patch).
- Use APCIterator().
- Check out APC 4.0 with LFU support, which supports multiple caches.
Other notes
- No sharing of compiled code between FastCGI threads
- Significant copying of compiled code between Apache/mod_php threads