Deploying XCache opcode cache on web hosting


In order to optimize and improve the quality of web hosting services, 8. 8. 2014 at 8:00 am to deploy a new cache opcode for PHP – XCache.

One of the cornerstones of fast web hosting is certainly the so-called opcode cache. It allows to significantly speed up the execution of PHP scripts by caching the compiled PHP code, which does not need to be recompiled every time the script is called.

We decided to improve the existing cache opcode and deploy a new solution, called XCache. This is due to major bugs and uncertain development of the currently used solution, i.e. eAcceleratorproPHP 5.3 and Alternative PHP Cache(APC) for PHP 5.4, which threaten the functionality and stability of our web servers. In particular, APC in the latest versions causes more trouble than good.

XCache on the other hand is a modern and actively developed project, behind which are the developers of the well-known HTTP server lighttpd. This cache is also fully compatible with PHP 5.5., for which we had no satisfactory candidate so far, which significantly complicated the future deployment of PHP 5.5 on our web hosting servers.


Unfortunately, this change will not be without some complications for some websites. The first problem is the incompatibility of the web application with XCache. Such a site may stop working completely or partially, or it may start behaving unexpectedly. The solution is to disable XCache, which will be available in the customer administration(PHP Configuration). However, we expect these cases to be minimal – the cache is optimized for commonly used editorial systems and only really unusual and non-standard designs can cause problems.

A second complication may be the direct use of APC functions in some web applications( In this case, you need to disable the use of these functions in the settings of the editorial system. Otherwise, the site may not work properly or even at all.

Some web applications also offer the ability to communicate directly with XCache and use it to cache additional data. However, this functionality is not available and the corresponding options need to be disabled in the web application settings (even so, the cache will be active as an opcode cache and will contribute to the fast running of pages).

If you are using PrestaShop and it is not working or you want it to work faster, please make the following adjustments:

  • In the administration of the specific web host, enable XCache according to the instructions.
  • In your PrestaShop administration, change the caching settings (http://webova-adresa-vaseho-shopu.koncovka/URLadministrace) as follows: Prestashop Administration -> Tools -> Performance -> Caching (at the very bottom) -> Use cache YES and check the option for Temporary memory system to “file system”. In case of problems, you can try to disable caching altogether.Prestashop Administration -> Tools -> Performance -> Caching (bottom) -> Use cache NO.
  • You can test the result of loading changes using the WebPageTest web generation speed measurement tool.