PHP缓存技术

Jun 23, 2016 pm 02:32 PM
php caching technology

为什么要使用缓存技术?理由很简单:提高效率。在程序开发中,获取信息的方式主要是查询数据库,除此以外,也可能是通过Web Services或者别的某种方法,无论哪种方法,在大量的并发访问面前,它们都可能成为效率的瓶颈,为了解决这些问题,人们提出了很多解决方案,其中一些是利用优化软件(如:APC,Eaccelerator,Zend Optimizer等等)来提高程序的运行效率,合理的运用这些软件,往往能使程序的运行效率得到数量级上的提升,但前提是你必须拥主机的控制权,以便能够安装这些软件,如果你使用的是虚拟主机的话,那么只能祈祷你的服务提供商已经预装了某个优化软件,否则就必须自己使用PHP来实现相应的缓存功能。如果这让你感到无所适从,相信下面的文字能给你一些启发。
很多PHP程序员都使用Adodb+Smarty这样的黄金搭档,那么就先看看如何使用它们的缓存功能。
首先看看adodb提供的数据缓存功能:

1 php     
2 include ( ' adodb.inc.php ' );  #  load code common to ADOdb     
3 $ADODB_CACHE_DIR   =   ' /usr/ADODB_cache ' ;     
4 $conn   =   & ADONewConnection( ' mysql ' );  #  create a connection     
5 $conn -> PConnect( ' localhost ' , ' userid ' , '' , ' agora ' ); #  connect to MySQL, agora db     
6 $sql   =   ' select CustomerName, CustomerID from customers ' ;     
7 $rs   =   $conn -> CacheExecute( 15 , $sql );     
8 ?>  

如上,每次查询数据的时候,会把相应的结果序列化后保存到文件中,以后同样的查询语句就可以不用直接查询数据库,而是从缓存文件中获得。
再来看看Smarty提供的页面缓存功能:

 1 php     
 2 require ( ' Smarty.class.php ' );     
 3 $smarty   =   new  Smarty;     
 4 $smarty -> caching  =   true ;     
 5 if ( ! $smarty -> is_cached( ' index.tpl ' )) {     
 6      //  No cache available, do variable assignments here.     
 7      $contents   =  get_database_contents();     
 8      $smarty -> assign( $contents );     
 9 }     
10 $smarty -> display( ' index.tpl ' );     
11 ?>      
12


如上,每次访问页面的时候,都会先检测相应的缓存是否存在,如果不存在,就连接数据库,得到数据,完成模板变量的赋值,显示页面,同时生成缓存文件,这样下次访问的时候缓存文件就发挥作用了,而不会再执行if块的数据查询语句了。当然,在实际使用中会有很多东西要考虑,比如,有效期的设置,缓存组的设置等等,具体可以查看Smarty手册中有关缓存(caching)的相关章节。
以上两个PHP流行组件缓存方式的侧重点是不同的,对于Adodb的缓存而言,它缓存的是数据,对于Smarty的缓存而言,它缓存的是页面。其他提供缓存功能的组件还有很多(如:PEAR::Cache_Lite等等),实际编程中使用哪个方案要具体情况具体分析,也可能会综合使用。
使用这些组件内置的缓存方案有一个很明显的好处是它们的实现对客户端而言都很透明。只要进行必要的设置(如:缓存时间,缓存目录等等)就可以了,而不用过多考虑实现缓存的细节问题,系统会根据设置自动管理缓存。但是其缺点也同样明显,因为每次请求仍然要用PHP解析一遍,效率和纯静态相比还是大打折扣,在大的PV面前还是不能满足要求,在这种情况下,仅仅做动态缓存就不够了,必须实现静态缓存。
该文章转载自脚本之家:http://www.jb51.net/html/200611/67/4965.htm

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 Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

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)

Hot Topics

Java Tutorial
1673
14
PHP Tutorial
1278
29
C# Tutorial
1257
24
How to implement dynamic data caching through caching technology in PHP? How to implement dynamic data caching through caching technology in PHP? Jun 21, 2023 am 08:10 AM

With the continuous development of Internet applications, optimizing website performance has become one of the necessary tasks for website development. Among them, the use of caching technology is an important optimization method. In PHP development, caching technology can improve the performance and response speed of the website, effectively avoid operations such as repeated calculations and database queries, and thereby achieve caching of dynamic data. This article will introduce how to use caching technology to implement dynamic data caching in PHP. The concept of caching Caching is a technology used to improve application performance. In website development, caching is caching service

How to Optimize Website Performance and Loading Speed ​​with PHP How to Optimize Website Performance and Loading Speed ​​with PHP Sep 12, 2023 am 10:13 AM

How to use PHP to optimize website performance and loading speed With the rapid development of the Internet, website performance and loading speed have attracted more and more attention. As a widely used server-side scripting language, PHP plays an important role in optimizing website performance and loading speed. This article will introduce some tips and methods for using PHP to improve the performance and loading speed of your website. Using a caching mechanism Caching is an effective way to improve website performance. PHP provides a variety of caching mechanisms, such as file caching, memory caching and data caching.

Analysis of the effectiveness of caching technology in PHP for static resource files Analysis of the effectiveness of caching technology in PHP for static resource files Jun 19, 2023 pm 10:49 PM

PHP is a server-side programming language widely used in web development. In the process of developing a website, the loading speed of static resource files (including css, js, pictures, etc.) directly affects the user experience of the website. Therefore, how to improve the loading speed of static resource files has become one of the issues that developers need to think about. One solution is to use caching technology in PHP. In PHP, the caching of static resource files is mainly divided into two types: browser cache and server cache. Browser caching relies on the browser's local caching mechanism to reduce

Encapsulated caching strategies and techniques in PHP Encapsulated caching strategies and techniques in PHP Oct 12, 2023 am 10:51 AM

Encapsulated caching strategies and technologies in PHP Caching is one of the important means to improve application performance. In PHP development, reasonable use of cache can reduce the number of database queries and increase data reading speed, thus improving the application response speed and user experience. The encapsulated caching strategy refers to encapsulating cache operations into common code blocks to facilitate reuse in multiple places and facilitate unified management and configuration. Below we will introduce several common encapsulation caching strategies and technologies, and give specific code examples. File cache File cache is the most

Summary of PHP caching technology methods and common problems Summary of PHP caching technology methods and common problems Jun 08, 2023 pm 04:40 PM

Summary of PHP caching technology methods and common problems As the number of visits to the website continues to increase, caching technology is particularly important in order to improve the response speed and performance of the website. In PHP development, caching technology also plays a vital role. This article will introduce methods of PHP caching technology and solutions to common problems. 1. PHP caching technology methods 1. File caching File caching refers to caching data in files, and you can directly read the files when you need to use them. The specific implementation method is to serialize the data and store it in the file. When reading,

Caching technology in PHP and its implementation method Caching technology in PHP and its implementation method Jun 23, 2023 am 11:31 AM

As the complexity of modern web applications continues to increase, performance issues have become a major challenge for developers. One of the common performance bottlenecks is frequent access to the database or file system, which can cause serious performance issues. Caching technology is one way to solve these problems. This article will introduce the basic knowledge and implementation methods of using cache in PHP. We will discuss some popular PHP caching techniques and how to integrate them into our applications. What is cache? Caching is a way for an application to

A guide to caching techniques in PHP A guide to caching techniques in PHP Jun 11, 2023 am 09:04 AM

PHP is a scripting language widely used in web development, and many websites are developed using PHP. However, as the number of visits continues to increase, the performance problems of the website have become increasingly prominent. In order to improve the performance of the website, caching technology is a very effective solution. This article will introduce caching technology in PHP, aiming to help readers better understand and apply caching technology to improve website performance. What is caching technology? Caching technology is a technology used in applications to increase the speed of data access. It is cached in memory or disk

Analysis of application scenarios of caching technology in PHP in different types of applications Analysis of application scenarios of caching technology in PHP in different types of applications Jun 19, 2023 pm 11:25 PM

PHP is a common server-side scripting language, and caching technology is an effective way to optimize performance. This article will explore the benefits and application methods of using PHP caching technology in different application scenarios. Web Applications Web applications need to perform a large number of initialization operations when starting, such as loading configuration files, database connections, etc. These operations consume a lot of time and computing resources and affect the performance of web applications. Using caching technology can reduce the number of executions of these initialization operations and speed up the response speed of web applications. In web applications,

See all articles