普遍缓存技术
数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中,以后同样的查询结果就直接从缓存表或文件中获得。
用的最广的例子看Discuz的搜索功能,把结果ID缓存到一个表中,下次搜索相同关键字时先搜索缓存表。
举个常用的方法,多表关联的时候,把附表中的内容生成数组保存到主表的一个字段中,需要的时候数组分解一下,这样的好处是只读一个表,坏处就是两个数据同步会多不少步骤,数据库永远是瓶颈,用硬盘换速度,是这个的关键点。
页面缓存:
每次访问页面的时候,都会先检测相应的缓存页面文件是否存在,如果不存在,就连接数据库,得到数据,显示页面并同时生成缓存页面文件,这样下次访问的时候页面文件就发挥作用了。(模板引擎和网上常见的一些PHP缓存机制类通常有此功能)
时间触发缓存:
检查文件是否存在并且时间戳小于设置的过期时间,如果文件修改的时间戳比当前时间戳减去过期时间戳大,那么就用缓存,否则更新缓存。
内容触发缓存:
当插入数据或更新数据时,强制更新PHP缓存机制。
静态缓存:
这里所说的静态缓存是指静态化,直接生成HTML或XML等文本文件,有更新的时候重生成一次,适合于不太变化的页面,这就不说了。
以上内容是代码级的解决方案,我直接CP别的框架,也懒得改,内容都差不多,很容易就做到,而且会几种方式一起用,但下面的内容是服务器端的缓存方案,非代码级的,要有多方的合作才能做到
内存缓存:
Memcached是高性能的,分布式的内存对象PHP缓存机制系统,用于在动态应用中减少数据库负载,提升访问速度。
php的缓冲器:
有eaccelerator, apc, phpa,xcache,这个这个就不说了吧,搜索一堆一堆的,自己看啦,知道有这玩意就OK
MYSQL缓存:
这也算非代码级的,经典的数据库就是用的这种方式,看下面的运行时间,0.09xxx之类的
我贴段根据蓝色那家伙修改后部分my.ini吧,2G的MYISAM表可以在0.05S左右,据说他前后改了有快一年
基于反向代理的Web缓存:
如Nginx,SQUID,mod_proxy(apache2以上又分为mod_proxy和mod_cache)
NGINX的例子
DNS轮询:
BIND是一款开放源码的DNS服务器软件,这个要说起来就大了,自己搜索去,大家知道有这个东西就行了。
我知道的有chinacache等大站就是这样做的,说简单点就是多服务器啦,把同一个页面或文件缓存到不同的服务器上,按南北自动解析到相关的服务器中。
分享到:
相关推荐
**Memcached分布式缓存入门** Memcached是一款高性能、分布式内存对象缓存系统,它被广泛应用于Web应用中,用于减轻数据库的负载,提高数据访问速度。这个“Memcached分布式缓存入门”资料将引导初学者深入理解...
- 缓存机制 - 安全性考虑 13. **《PHP4.0入门与提高》电子书** - **简介**:针对较旧版本的PHP4.0入门教程。 - **核心内容**: - PHP4.0环境搭建 - 基础语法 - 高级特性 14. **《10天学会php之php快速入门...
10. **PHP性能优化**:理解如何通过代码优化、缓存策略和服务器配置来提升PHP应用的性能。 11. **PHP与Ajax**:学习如何使用PHP与JavaScript的Ajax技术实现异步交互,提升用户体验。 12. **RESTful API开发**:...
在本压缩包“PHP从入门到精通(第5版)第5章 PPT.zip”中,我们可以预见到它包含了关于PHP编程语言深入学习的内容,特别是第5章的讲解。PHP是一种广泛使用的开源脚本语言,尤其适用于Web开发,能够嵌入到HTML中,...
5. **性能优化**:了解缓存机制、代码优化技巧、资源管理等,提高应用的响应速度和效率。 通过系统学习上述知识点,可以从入门级别逐步进阶到精通,成为PHP领域的专家级开发者。无论是构建网站、开发API还是参与...
了解如何配置Nginx或Apache服务器,设置缓存机制如OPcache,以及性能监控和调试工具,可以帮助你提高应用程序的运行效率和用户体验。 总之,《PHP从入门到精通》涵盖了从基础语法到高级应用的全面内容,无论你是...
12. PHP性能优化:通过缓存技术(如APC、Memcached、Redis)、代码优化、数据库优化等方法,可以提高PHP应用的运行效率。 13. PHP与RESTful API:随着Web服务的发展,PHP可以用于构建RESTful API,提供JSON或其他...
《PHP快速入门指南(第7版)》这本书深入浅出地带领读者从零开始学习PHP,一直到能够熟练地用PHP开发应用程序。 在了解PHP的基本架构之前,首先要对其语言本身有一个基本的认识。PHP7相较于之前的版本,在性能上有...
19. **缓存技术**:使用PHP的APC、Memcached或Redis进行数据缓存,提升网站性能。 20. **Web服务**:理解RESTful API,使用PHP构建API接口。 这个压缩包中的"阅读器下载.htm"可能是提供阅读或解压教程的指引,"E书...
- **性能影响**:虽然有缓存机制,但相比直接在PHP中渲染HTML,可能存在一定的性能损耗。 - **更新维护**:随着PHP框架的发展,许多现代框架已经内置了类似功能,Smarty的地位有所下滑。 ### 2. Smarty的配置 配置...
5. PHP性能优化:了解如何通过优化代码、缓存策略、负载均衡等手段提升PHP应用程序的性能。 6. PHP持续集成与自动化部署:学习使用Git版本控制,以及Jenkins、Docker等工具进行持续集成和自动化部署。 通过韩顺平...
- **缓存技术**:了解PHP中的缓存机制,如使用Memcached或Redis进行数据缓存。 - **代码重构**:代码重构的重要性及常见策略。 - **安全性**:探讨常见的Web安全问题及其防范措施。 - **部署与运维**:如何将开发好...
- **缓存机制**:介绍如何使用APC、Memcached等缓存技术提高PHP应用程序的性能。 - **代码优化**:探讨如何通过优化算法、减少数据库查询等方式提升程序运行效率。 - **负载均衡**:了解如何通过负载均衡器分散...
Smarty提供了许多内置功能,如变量赋值、插件、函数、缓存机制等。变量赋值允许我们在模板中使用PHP变量,而无需直接写入PHP代码。例如,`{$name}`表示一个来自PHP脚本的变量。插件则允许扩展其功能,例如日期格式化...
28. **性能优化**:讨论PHP性能优化技巧,如缓存技术(例如Memcached、Redis)、PHP优化配置等。 通过以上知识点的学习,你将能够从零开始掌握PHP编程,理解其核心概念,并具备开发实际Web应用程序的能力。持续学习...
在这一过程中,**Smarty** 还提供了缓存机制,对于已经编译过的模版,如果没有发生变化,则直接使用缓存结果,从而大大提高了执行效率。 #### 四、Smarty的使用 ##### 安装与配置 - **下载与解压**:首先从官方...
**PHP5 MySQL 入门** 在信息技术领域,PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,尤其在Web开发中占有重要地位。PHP5是PHP的一个重要版本,它引入了许多新特性,增强了性能和稳定性。而MySQL则...