Home  >  Article  >  Backend Development  >  Detailed explanation of the extension of PHP accelerated cache

Detailed explanation of the extension of PHP accelerated cache

小云云
小云云Original
2018-03-17 10:25:221739browse

Recently, I have delved into some commonly used acceleration cache extensions and tools for PHP. The cache extensions that are often introduced include eAccelerator, memcached, xcache, and Alternative PHP Cache. Let’s briefly talk about the differences and what I prefer. Used;

1. eAccelerator

eAccelerator is a free and open source PHP accelerator that optimizes and caches dynamic content and improves the performance of PHP scripts. Caching performance allows PHP scripts to almost completely eliminate server overhead in the compiled state. It also optimizes scripts to speed up their execution efficiency. Improve PHP program code execution efficiency by 1-10 times. It can be understood from the text: eAccelerator is a PHP accelerator extension.

 2. memcached

Memcached is a high-performance distributed memory object caching system used in dynamic web applications to reduce database load. It delivers the speed of dynamic, database-driven websites by caching data and objects in memory to reduce the number of database reads. From the text, it can be understood as: memory cache extension, and it is mostly used for cluster servers. It is mainly used for distributed cache and is regarded as database cache.

 3. Alternative PHP Cache (APC cache)

Alternative PHP Cache (APC cache) is an open source cache that is effective for PHP Cache tool, which can cache the PHP intermediate code of Opcode (target file). APC's cache is divided into two parts: system cache and user data cache. The system cache is used automatically. It means that APC caches the compilation results of the PHP file source code, and then compares the time stamp when calling again. If not expired, the cached code is used to run. The default cache is 3600s (one hour). However, this still wastes a lot of CPU time. Therefore, you can set the system cache in php.ini to never expire (apc.ttl=0). However, if it is set like this, it will be required after running the PHP code. Restart your web server (such as apache...). The current performance test of APC generally refers to this layer of cache; from the literal meaning: Alternative PHP Cache (APC cache) is also a memory cache extension and a database cache extension.

  4. Xcache

is an open source opcode cache/optimizer, which can improve the performance of PHP on the server. The data after compiling PHP is buffered into shared memory to avoid repeated compilation processes. The compiled code in the buffer can be directly used to increase speed. It can usually increase your page generation rate by 2 to 5 times and reduce server load. In fact, it is a PHP accelerator extension like eAccelerator.

The above are their functions and differences. To put it simply: eAccelerator and xcache are PHP cache extensions, memcached and APC cache are database cache extensions. Generally, only one of them needs to be installed. Do not Greed for too much. In addition, actual testing found that when the number of caches exceeds a certain threshold, APC's performance is not as good as Memcache. Therefore, when it comes to the choice of extensions, I usually choose the combination of xcache+memcached.

Related recommendations:

Install php acceleration cache

The above is the detailed content of Detailed explanation of the extension of PHP accelerated cache. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn