首页 > 后端开发 > 正文

php框架缓存类 php如何设置缓存

2023-09-14 04:00:06 | 我爱编程网

今天我爱编程网小编整理了php框架缓存类 php如何设置缓存相关信息,希望在这方面能够更好的大家。

php框架缓存类 php如何设置缓存

php缓存机制有哪些



页面缓存: 每次访问页面的时候,都会先检测相应的缓存页面文件是否存在,如果不存在,就连接数据库,得到数据,显示页面并同时生成缓存页面文件,这样下次访问的时候页面文件就发挥作用了.(模板引擎和网上常见的一些PHP缓存机制类通常有此功能)(推荐学习:PHP编程从入门到精通)
静态缓存: 这里所说的静态缓存是指静态化,直接生成HTML或XML等文本文件,有更新的时候重生成一次,适合于不太变化的页面
内存缓存: memcache是高性能的,分布式的内存对象PHP缓存机制系统,用于在动态应用中减少数据库负载,提升访问速度
我们可以使用PHP自带的缓存机制来完成页面静态化,但是仅靠PHP自身的缓存机制并不能完美的解决页面静态化,往往需要和其他静态化技术(通常是伪静态技术)结合使用。
output buffer是php自带缓存,可以通过配置php.ini关闭,程序缓存是一直开启状态,没法关闭。程序缓存中内容没法修改,output buffer中内容可以修改,修改完成后全部发给程序缓存。
当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方 怎么干。HTTP传输的消息也是这样规定的,每一个HTTP包都分为HTTP头和HTTP体
一个消息,发送消息时候,一般来说,都是先消息头部分,在消息头部分指明了 消息体部分的长度,然后使用\r\n\r\n来表示消息头部分结束,接下来是消息体部分。如果没有定义消息头,发送默认的消息头。
由图可知,浏览器向apache发送http请求后,apache根据httpd.conf文件,将请求转发给php处理模块,php处理模块根据php.ini处理test2.php。
如果php.ini关闭output buffer,那么php处理模块将信息头部和信息内容直接发送给程序缓存,如果php.ini开启output buffer,那么php处理模块将信息头部和信息内容直接发送给Output buffer,Output buffer接收完后再发送给程序缓存。

php框架缓存类 php如何设置缓存

php缓存有哪些



1、全页面静态化缓存:
将页面全部生成为HTML静态页面,用户访问时直接访问静态页面,不走PHP服务器的解析流程。此种方式在CMS系统中比较常见,如dedecms。
实现方法:输出缓存
ob_start()--打开“输出控制缓冲”;
some code --要运行的代码;
$content=ob_get_contents()--返回“输出缓冲区的内容”;
some code --使用file_put_contents()等函数将返回的数据写入HTML文件;
ob_clearn()--清空“输出缓冲区”;2、页面部分缓存:
将页面中不常变动的部分进行静态化缓存,而经常变化的部分不缓存,最后组装在一起显示;可以使用类似ob_get_contents()的方式实现,也可以利用类似ESI之类的页面片段缓存策略,使其用来做动态页面中相对静态的片段部分的缓存。该缓存方式常用与商城中的商品页。

php框架缓存类 php如何设置缓存

php如何设置缓存

设置php缓存的方法:
缓存技术可减轻服务器负载、降低网络拥塞、增强WWW可扩展性,其基本思想是利用客户访问的时间局部性,将客户访问过的内容在Cache中存放一个副本,当该内容下次被访问时,不必连接到驻留网站,而是由Cache中保留的副本提供。缓存是一个很重要的技术,下面是自己使用的几个缓存技术,记录一下。
1、文件缓存
2、Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信,php有memcached扩展,安装好了即可使用。
// 初始化
$cache = new Memcache();
$cache->pconnect(CACHE_HOSTNAME, CACHE_PORT);
// 写入
$cache->set(CACHE_PREFIX . $key, $value, MEMCACHE_COMPRESSED, $expire);(CACHE_PREFIX 为了避免命名冲突,最好加一个前缀,MEMCACHE_COMPRESSED一个标记,设置为0表示不压缩)
// 读取
$cache->get(CACHE_PREFIX . $key);
// 删除
$cache->delete(CACHE_PREFIX . $key);3、Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。类似的安装好php扩展// 初始化$cache = new Redis();
// 初始化$cache = new \\Redis();
$cache->connect(CACHE_HOSTNAME, CACHE_PORT);
// 先检查是否存在,然后写入并设置有效时间
if($cache->exists($key)){
$cache->delete(CACHE_PREFIX . $key);
}
$cache->set(CACHE_PREFIX . $key, serialize($value));
$cache->expire(CACHE_PREFIX . $key, $expire);
// 读取
$cache->get(CACHE_PREFIX . $key);4、APC
Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。
这个试了半天没成功,windows一开启就报错,记下以后再试。
php内置的,无需类似上面两种去连接初始化什么的。
// 写入
apc_store(CACHE_PREFIX . $key, $value, $expire);
// 读取
apc_fetch(CACHE_PREFIX . $key);
// 删除
apc_delete(CACHE_PREFIX . $key);相对第四个貌似是最简单的,但是好像配置不好配,网上找了半天没找到解决方案。
相关免费学习推荐:php编程(视频)
我爱编程网

以上就是我爱编程网小编给大家带来的php框架缓存类 php如何设置缓存全部内容,希望对大家有所帮助!
与“php框架缓存类 php如何设置缓存”相关推荐
php中的缓存框架 php如何设置缓存
php中的缓存框架 php如何设置缓存

php缓存方式有哪几种呢都在什么情况下使用呢PHP缓存技术WEB程序获取信息的方式主要是查询数据库,当数据库不是很大的情况下不会有太大的问题.然而,随着网站的发展,数据库呈几何级数的方式增长的时候,就会出现瓶颈.于是PHP缓存技术诞生了.PHP缓存技术工作时,当程序查询数据的时候,会把相应的结果序列化后保存到文件中,以后同样的查询语句就可以不用直接查询数据库,而是从缓存文件中获得。这一改进使

2023-09-18 07:28:10
内存缓存框架php php如何去除缓存
内存缓存框架php php如何去除缓存

thinkphp3.2框架怎么写清除缓存hinkPHP需要清除的缓冲有四个:模版缓存(Cache),数据缓存目录(Temp),日志目录(Logs),数据目录(Data)。//清除缓存目录functionclearCache($type=0,$path=NULL){if(is_null($path)){switch($type){case0://模版缓存目录$path=

2023-09-08 22:35:04
php框架缓存 PHP缓存技术的介绍
php框架缓存 PHP缓存技术的介绍

php如何去除缓存php去除缓存的方法:1、在项目的配置文件【config.php】里加入相关代码;2、删除TP框架的缓存目录的相关文件夹;3、在业务控制器同目录下新建自己的【清除缓存】的类,并通过url访问的方式来清楚缓存。【相关学习推荐:php图文教程】php去除缓存的方法:第一:在项目的配置文件config.php里加入下面两行代码就能避免缓存问题'TMPL_CACH

2023-09-05 06:24:46
去除php框架 php如何去除缓存
去除php框架 php如何去除缓存

php如何去除缓存php去除缓存的方法:1、在项目的配置文件【config.php】里加入相关代码;2、删除TP框架的缓存目录的相关文件夹;3、在业务控制器同目录下新建自己的【清除缓存】的类,并通过url访问的方式来清楚缓存。【相关学习推荐:php图文教程】php去除缓存的方法:第一:在项目的配置文件config.php里加入下面两行代码就能避免缓存问题'TMPL_CACH

2023-09-05 00:20:39
php数据缓存框架 PHP之APC缓存详细介绍
php数据缓存框架 PHP之APC缓存详细介绍

php如何去除缓存php去除缓存的方法:1、在项目的配置文件【config.php】里加入相关代码;2、删除TP框架的缓存目录的相关文件夹;3、在业务控制器同目录下新建自己的【清除缓存】的类,并通过url访问的方式来清楚缓存。【相关学习推荐:php图文教程】php去除缓存的方法:第一:在项目的配置文件config.php里加入下面两行代码就能避免缓存问题'TMPL_CACH

2023-09-07 14:27:50
php缓存框架有哪些 PHP之APC缓存详细介绍
php缓存框架有哪些 PHP之APC缓存详细介绍

php框架需要掌握什么php框架需要掌握什么?下面介绍几个主流的PHP框架。(1)ZendFrameworkZendFramework是由Zend公司开发的PHP框架,可用于开发Web程序和服务。ZendFramework采用MVC架构模式来分离应用程序中不同的部分,从而方便程序的开发和维护。(2)CakePHPCakePHP是一个运用了诸如ActiveRecord、

2023-09-17 14:48:46
php项目框架中缓存层 php常用缓存有哪些,说一下你了解到的缓存
php项目框架中缓存层 php常用缓存有哪些,说一下你了解到的缓存

php常用缓存有哪些,说一下你了解到的缓存一、数据缓存这里所说的数据缓存是指数据库查询缓存,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中,以后同样的查询结果就直接从缓存表或文件中获得。用的最广的例子看Discuz的搜索功能,把结果ID缓存到一个表中,下次搜索相同关键字时先搜索缓存表。举个常用的方法,多表

2023-09-29 21:53:35
php自己写框架之缓存 PHP之APC缓存详细介绍
php自己写框架之缓存 PHP之APC缓存详细介绍

thinkphp3.2框架怎么写清除缓存hinkPHP需要清除的缓冲有四个:模版缓存(Cache),数据缓存目录(Temp),日志目录(Logs),数据目录(Data)。//清除缓存目录functionclearCache($type=0,$path=NULL){if(is_null($path)){switch($type){case0://模版缓存目录$path=

2023-09-26 11:13:17