http://eaccelerator.net/wiki/Settings
"On every hit eAccelerator will check the modification time of a script to see if it changed and needs to be recompiled."

xcache's settings for ini files are at http://xcache.lighttpd.net/wiki/XcacheIni and I don't see a mtime equivalent setting

For some opcode cache's we need to ensure that patched core files are re-compiled into the opcode cache. There should be a documentation that indicates special instructions for opcode caches.

Comments

deekayen’s picture

Check mtime in eaccelerator tells it to check the last modified time before assuming to re-use the compiled version in memory already. It is on by default, but some demonstration configurations across the internet show to disable it because that makes the cache even faster. Checking mtime is a little bit more resource intensive, but when you switch from a broken patched file to a fixed one, it can make sure it dumps the broken one. It's still way less than recompiling the file every time.

For example, the self test uses broken files, compiles them, stores them in memory. If mtime checking isn't on, it'll reuse the broken files for the final test that's supposed to succeed when it really should recompile certain files that got refreshed in the re-checkout.

I don't see equivalent mtime check settings for xcache, but someone should probably play with apc.stat_ctime and apc.file_update_protection on APC http://us2.php.net/manual/en/apc.configuration.php since they're related to the mtime checks that eaccelerator does.

boombatower’s picture

Same as #514016: MySQL on tmpfs

We need to figure out where to document this type of stuff...as not really issue queue.

deekayen’s picture

Status: Active » Fixed

Documented working mtime configs for apc, eaccelerator, and xcache at http://testing.drupal.org/performance-tuning-tips-for-D7

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.