Home Backend Development PHP Tutorial PHP9 large cache technology

PHP9 large cache technology

Apr 04, 2017 pm 03:22 PM
caching technology

1. Full pagestaticificationcaching

That is, all pages are generated into html static pages. When users access Directly access the static page without going through the PHP server parsing process. This method is more common in CMS systems, such as dedecms;

A more common implementation method is to use output caching:

Ob_start()*** ***Code to run******$content = Ob_get_contents();****Write cached content to html file****Ob_end_clean ();

2. Page partial caching

This method is to statically cache the parts of a page that do not change frequently, while the frequently changing blocks are not cached, and are finally assembled together. Display; it can be implemented using a method similar to ob_get_contents, or you can use a page fragment caching strategy such as ESI to cache relatively static fragments in dynamic pages (ESI technology, please baidu, not detailed here) ).

This method can be used for product pages in shopping malls;

3. Data caching

As the name suggests, it is a way of caching data ;For example, when a certain product information in the mall is requested using the product ID, data including store information, product information and other data will be obtained. At this time, these data can be cached in a php file, and the file name contains the product id to create a unique identifier; the next time someone wants to view this product, the information in this file will be directly adjusted first, without having to go to the database to query ; in fact, what is cached in the cache file is a php array and the like;

Ecmall This method is used in the mall system;

4. Query cache

In fact, this It is the same idea as data caching, which is to cache according to the query statement; cache the data obtained by the query in a file. When the same query is encountered next time, the data will be directly retrieved from this file without checking the database. ;But the cache file name here may need to be based on the query statement to establish a unique identifier;

Caching based on time changes

Actually, this is not a real caching method; the above Caching technologies 2, 3, and 4 generally use time change judgment; that is, you need to set a valid time for the cached file. Within this valid time, the same access will first fetch the contents of the cached file, but if the cache exceeds the set cache time, you need to re-obtain the data from the database and produce the latest cache file; for example, I set the homepage of our mall to be updated once for 2 hours;

5. Caching based on content changes

This is not an independent caching technology and needs to be used in combination; that is, when the database content is modified, the cache file is immediately updated;

For example, a person In a mall with a lot of traffic and a lot of products, the product table must be relatively large, and the pressure on this table is also heavy; we can page cache the product display page;

When the merchant modifies the product information in the background , click save, and we will update the cache file at the same time; then, when the buyer accesses this product information, he actually accesses a static page without having to access the database;

Just imagine, if the product page Without caching, you will have to check the database every time you access a product. If 100,000 people browse the product online, the server will be under great pressure;

6. Memory caching

Tips At this point, the first thing you may think of is Memcached; memcached is a high-performance distributed memory cache server. The general purpose of use is to reduce the number of database accesses by caching database query results to increase the speed and scalability of dynamic web applications.

It caches the information that needs to be cached into the system memory. When the information needs to be obtained, it is retrieved directly from the memory; the more commonly used method is the key–>value method;


$memcachehost = '192.168.6.191';

$memcacheport = 11211;

$memcachelife = 60;

$memcache = new Memcache;

$memcache->connect($memcachehost,$memcacheport) or die ("Could not connect");

$memcache->set('key','cached content');

$get = $memcache->get($key); //Get information?> ;

7, apache cache module

apacheAfter installation is completed, it is not allowed to be cached. If an external cache or squid server requires web acceleration, it needs to be set in httpd.conf. Of course, the premise is that the mod_cache module must be activated when installing apache.

When installing apache: ./configure –enable-cache –enable-disk-cache –enable-mem-cache

8, php APCCache extension

Php has an APC cache extension, which is php_apc.dll under Windows. You need to load this module first, and then configure it in php.ini:

[apc]

extension=php_apc.dll

apc.rfc1867 = on

upload_max_filesize = 100M

post_max_size = 100M

apc.max_file_size = 200M

upload_max_filesize = 1000M

post_max_size = 1000M

max_execution_time = 600; Maximum time for each PHP page to run Value (seconds), default is 30 seconds

max_input_time = 600; Maximum time required for each PHP page to receive data, default is 60

memory_limit = 128M; Each PHP page consumes Maximum memory, default 8M

9, Opcode cache

We know that the execution process of php can be shown in the following figure:

PHP9 large cache technology


First php code is parsed into Tokens, then compiled into Opcode code, and finally the Opcode code is executed and the result is returned; therefore, for the same php file, the The Opcode code can be cached when running once. The next time you execute this page, you will directly find the cached Opcode code and execute the last step directly, without the need for intermediate steps.

The more well-known ones are XCache, Turck MM Cache, PHP Accelerator, etc.

The above is the detailed content of PHP9 large cache technology. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

TTL and TTI in Java caching technology TTL and TTI in Java caching technology Jun 20, 2023 am 10:58 AM

TTL and TTI in Java caching technology are inseparable from caching technology in any software system. As a common caching technology, Java cache can be divided into multiple types according to different caching strategies, such as memory-based, disk-based or cluster-based caching. Regardless of their type, caches often become more complex and more widely used. However, there are also some issues that need to be paid attention to when using caching technology, such as cache expiration time, namely TTL and TTI. TTL and T

Learn about Redisson caching technology Learn about Redisson caching technology Jun 21, 2023 am 09:54 AM

Redisson is a Redis-based caching solution for Java applications. It provides many useful features that make using Redis as a cache in Java applications more convenient and efficient. The caching functions provided by Redisson include: 1. Distributed mapping (Map): Redisson provides some APIs for creating distributed maps. These maps can contain key-value pairs, hash entries, or objects, and they can support sharing among multiple nodes.

How to use APCu caching technology to optimize the performance of PHP applications? How to use APCu caching technology to optimize the performance of PHP applications? Jun 20, 2023 pm 09:47 PM

At present, PHP has become one of the most popular programming languages ​​​​in Internet development, and the performance optimization of PHP programs has also become one of the most pressing issues. When handling large-scale concurrent requests, a delay of one second can have a huge impact on the user experience. Today, APCu (AlternativePHPCache) caching technology has become one of the important methods to optimize PHP application performance. This article will introduce how to use APCu caching technology to optimize the performance of PHP applications. 1. APC

Learn about Aerospike caching technology Learn about Aerospike caching technology Jun 20, 2023 am 11:28 AM

With the advent of the digital age, big data has become an indispensable part of all walks of life. As a solution for processing large-scale data, the importance of caching technology has become increasingly prominent. Aerospike is a high-performance caching technology. In this article, we will learn in detail about the principles, characteristics and application scenarios of Aerospike caching technology. 1. The principle of Aerospike caching technology Aerospike is a Key-Value database based on memory and flash memory. It uses

Learn about Infinispan Server caching technology Learn about Infinispan Server caching technology Jun 20, 2023 pm 08:01 PM

Infinispan is a highly concurrent distributed cache system that can be used to handle large amounts of cached data. InfinispanServer, as a deployment form of Infinispan cache technology, can deploy Infinispan cache to one or multiple nodes to achieve better cache utilization. The advantages of InfinispanServer in use mainly include the following aspects: Highly scalable InfinispanServer

How to optimize PHP application CPU usage using Memcached caching technology? How to optimize PHP application CPU usage using Memcached caching technology? Jun 21, 2023 pm 05:07 PM

With the development of the Internet, PHP applications have become more and more common in the field of Internet applications. However, high concurrent access by PHP applications can lead to high CPU usage on the server, thus affecting the performance of the application. In order to optimize the performance of PHP applications, Memcached caching technology has become a good choice. This article will introduce how to use Memcached caching technology to optimize the CPU usage of PHP applications. Introduction to Memcached caching technology Memcached is a

Integration innovation of caching technology and 5G applications in Golang. Integration innovation of caching technology and 5G applications in Golang. Jun 20, 2023 pm 08:43 PM

With the gradual popularization of 5G technology, more and more application scenarios require efficient network transmission and data response speed. Caching technology, as a common performance optimization method, plays an important role in improving data response speed. In this article, we will explore the integration innovation of caching technology and 5G applications in Golang and explore the relationship between the two. First, we need to understand what 5G applications are. 5G applications refer to applications based on 5G network architecture and technology, which are characterized by high speed, low latency and high reliability.

A deep dive into distributed caching in Java caching technology A deep dive into distributed caching in Java caching technology Jun 21, 2023 am 09:00 AM

In the current Internet environment of high concurrency and big data, caching technology has become one of the important means to improve system performance. In Java caching technology, distributed caching is a very important technology. So what is distributed cache? This article will delve into distributed caching in Java caching technology. 1. Basic concepts of distributed cache Distributed cache refers to a cache system that stores cache data on multiple nodes. Among them, each node contains a complete copy of cached data and can back up each other. When one of the nodes fails,

See all articles