MediaWiki behaves very differently with PHP op-code caching enabled/disabled: WITH caching, page loads take roughly 10s each; WITHOUT caching, page loads take less than 1s. First off, stack info:
- nginx 1.2.6 with PHP handled by PHP-FPM
- MySQL 5.5.29-1
- PHP 5.3.21-1 with XCache 3.0.1, Suhosin 0.9.33
- MediaWiki 1.20.2 with Nuke 1.1.7, Renameuser, ParserFunctions 1.4.1, Vector 0.3.0, WikiEditor 0.3.1
So, I had a MediaWiki 1.15 setup working, and decided to upgrade to MediaWiki 1.20. After upgrading, I noticed a significant performance degradation in page load time (above 10s).
Investigation led me to try and comment out the
$wgMainCacheType = CACHE_ACCEL; directive in LocalSettings.php. This seemed to solve the issue (below 1s load time).
However, this is more of a workaround than a real solution. So I'm asking for help here, to find the real cause to the problem, and a cure for it.
Here are links to profiling logs generated with and without caching:
Looks like most of the 10s loading time is being eaten up in function MessageCache::load().
The following message seems weird to me:
- WITH caching:
MessageCache::load: Loading fr... cache is empty, loading from database, loading FAILED - cache is disabled
- WITHOUT caching:
MessageCache::load: Loading fr... got from global cache
Could it be that MessageCache::load() waits for something and times out after 10s? If so, what would it be waiting for? How do I fix it?
During installation, MediaWiki did not report any issue with my setup.
Can anyone suggest a course of action to further investigate this issue?
Unfortunately, the wiki is private and I cannot provide a URL for accessing it.
Thanks a bunch in advance,