PHP 9 Large Cache Technology summary, PHP9 large Cache summary
1. Full page static cache
That is, the page is all generated HTML static page, the user accesses the static page directly, but not to go to the PHP server parsing process. This way, in the CMS system is more common, such as dedecms;
A more common way to implement this is with output caching:
Ob_start()******要运行的代码*******$content = Ob_get_contents();****将缓存内容写入html文件*****Ob_end_clean();
2. Page Partial cache
In this way, the infrequently changed parts of a page are statically cached, and the frequently changing blocks are not cached, assembled and displayed together, can be implemented in a way similar to ob_get_contents, or can take advantage of page fragment caching policies like ESI, The cache used to make a relatively static fragment portion of a dynamic page (ESI technology, please Baidu, here is an unknown).
This method can be used for product pages such as the mall;
3. Data cache
As the name implies, is a way to cache data, for example, a product information in the mall, when the product ID to request, will be included in the store information, merchandise information and other data, this can be cached in a PHP file, the file name contains the product ID to build a unique mark The next time someone wants to view this product, the first thing is to directly tune the information inside the file, instead of going to the database query; in fact, the cache file is a PHP array.
Ecmall Mall system inside the use of this way;
4. Query cache
In fact, this with the data cache is a way of thinking, is based on query statements to cache, the query to get the data cached in a file, the next time you encounter the same query, directly from the file to adjust the data, will not check the database, but the cache file name here may need to use a query statement as the base point to establish a unique;
Cache by Time Change
In fact, this is not a true caching method, the above 2, 3, 4 of the cache technology is generally used in the time to change the judgment, that is, for the cache file you need to set a valid time, in this effective time, the same access will first take the contents of the cache file, but more than the set cache time, You need to re-fetch the data from the database and produce the latest cache files; For example, I will be the first page of our mall is set up 2 hours to update;
5. Cache by content Change
This is not an independent caching technology, need to be combined with, that is, when the database content is modified, immediately update the cache file;
For example, a large number of shopping malls, a lot of goods, commodity tables must be relatively large, the pressure of the table is also heavier; we can cache the product display page;
When the merchant changes the information of this product in the background, click Save, we update the cache file at the same time, then, when the buyer accesses this product information, it actually accesses a static page, and does not need to visit the database again;
Imagine, if the product page does not cache, then each visit to a commodity will go to the database to check once, if there are 100,000 people online browsing products, the server pressure is big;
6. In-Memory cache
The first thing you can think of is that memcached;memcached is a high-performance distributed memory cache server. The general purpose is to reduce the number of database accesses by caching database query results to improve the speed and scalability of dynamic Web applications.
It is to cache the information that needs to be cached in the system memory, need to obtain information, directly into the memory, the more common way is key–>value way;
PHP $memcachehost= ' 192.168.6.191 ';$memcacheport= 11211;$memcachelife= 60;$memcache= New Memcache;$memcache-connect ( $memcachehost $memcacheport ) or Span class= "KWD" >die ( "Could not connect" $memcache ->set (, ' cached content ' ' $get =< Span class= "PLN" > $memcache ->get ( $key //get information ?>
7. Apache Cache Module
After the installation of Apache, the cache is not allowed. If you have a cache or squid server that requires web acceleration, you need to set it up in htttpd.conf, as long as you activate the Mod_cache module when you install Apache.
When installing Apache:./configure–enable-cache–enable-disk-cache–enable-mem-cache
8. PHP APC Cache extension
PHP has an APC cache extension, Windows is php_apc.dll, you need to load the module first, and then configure it in php.ini:
[Apc]Extension=Php_apc.DLL APC.rfc1867=On Upload_max_filesize= 100MPost_max_size= 100MApc.Max_file_size= 200MUpload_max_filesize= 1000MPost_max_size= 1000M Max_execution_time = 600 ; each php page run maximum time value (seconds), default 30 seconds Max_input_time = 600< Span class= "PLN" > ; each php page The maximum time required to receive data, default 60 Memory_limit = 128m Span class= "pun" >; each php The maximum memory eaten by the page, default 8m
9. OpCode Cache
We know that PHP's execution process can be used to show:
First, the PHP code is parsed into tokens, and then compiled into opcode code, and finally execute opcode code, return the results; So, for the same PHP file, the first time the runtime can cache its opcode code, the next time you execute this page, will go to find the cache opcode code , take the final step directly, without needing the intermediate steps.
More well-known is XCache, Turck MM Cache, PHP Accelerator and so on.
All-in-one programmer Exchange QQ Group 290551701, gather a lot of Internet elite, technical director, architect, Project Manager! Open source technology research, Welcome to the industry, Daniel and beginners are interested in engaging in IT industry personnel to enter!
http://www.bkjia.com/PHPjc/1055136.html www.bkjia.com true http://www.bkjia.com/PHPjc/1055136.html techarticle PHP 9 Large Cache Technology summary, PHP9 Large cache Summary 1, full-page static cache is the page all generated HTML static page, the user access to the static page directly, but not ...