企业宣传,产品推广,广告招商,广告投放联系seowdb

调优LAMP运行程序的5种简双方法 经常使用操作码缓存

调优 运行程序的 5 种方便 方法

经常使用操作码缓存 、 提升 PHP 设置 、 治理require和include 、 提升数据库 、 有效缓存数据

简介

Wikipedia、Facebook 和 Yahoo! 等重要 web 属性经常使用 LAMP 架构来为每天数百万的恳求提供服务,而 Wordpress、Joomla、Drupal 和 SugarCRM 等 web 运行程序软件经常使用其架构来让组织轻松部署基于 web 的运行程序。

该架构的好处在于其方便性。而 .NET 这样的堆栈和 Java™ 技术或许经常使用少量配件、昂贵的软件栈和复杂的性能调优,LAMP 堆栈可以运转于商品配件之上,经常使用开源软件栈。由于软件栈是一个松懈的组件集,而非一个全体堆栈,性能调优是一大应战,由于须要剖析和调优每个组件。

但是,这有几个个方便性能义务会对任何规模的网站的性能发生渺小的影响。在本文中,咱们将讨论旨在提升 LAMP 运行程序性能的 5 个这样的义务。这些名目应当很少须要对您的运行程序启动架构更改,使其成为***化您的 web 运行程序所需的照应才干和配件需求的安保、方便的选用。

经常使用操作码缓存

提高任何 PHP 运行程序(当然是 LAMP 中的 “P”)的性能的最简单方式是应用一个操作码缓存。关于我经常使用的任何网站,它是我确保留在的一项内容,由于性能影响很大(很多时刻有了操作码缓存,照应期间可缩小一半)。但是对 PHP 不相熟的大局部人的一个很大的不懂是,为何改良会如此之大。答案在于 PHP 如何处置 web 恳求。图 1 概览了 PHP 恳求的流程。

图 1. PHP 恳求

由于 PHP 是一种解释言语,而非 C 或 Java 等编译言语,对每个恳求口头了 “解析-编译-口头” 的整个步骤。您可以看到为何这会耗时、耗资源,特意是当脚本在恳求之间很少变动时。解析和编译脚本之后,脚本作为一系列操作码处于机器可解析形态。这是操作码缓存施展成效的中央。它作为一系列操作码缓存这些编译脚本,以防止为解析和编译每个恳求步骤。您将在图 2 中看到这样的上班流是如何运作的。

图 2. PHP 恳求经常使用操作码缓存

因此当 PHP 脚本的缓存操作码存在时,咱们可以跳过 PHP 恳求流程的解析和编译步骤,间接口头缓存操作码并输入结果。审核算法担任处置您或许对脚本文件启动了更改的状况,因此在已变卦脚本的***个恳求后,会为随后的恳求智能从新编译缓和存操作码,交流缓存的脚本。

操作码缓存关于 PHP 盛行已久,其中早期的一些要追溯到 PHP V4 的全盛期。目前有一些盛行选项正在踊跃开发和经常使用中:

•代替 PHP 缓存(APC)或许是 PHP ***的操作码缓存(参见 参考资料)。它由若干** PHP 开发人员所开发,做出了很大奉献,Facebook 和 Yahoo! 的工程师赋予了其速度和稳固性。它还允许用于处置 PHP 恳求的若干其余速度改良,包括一个用户缓存组件,这将在本文前面讨论。

•Wincache 是重要由 Microsoft® 的 Internet Information Services (IIS) 团队踊跃开发的一个操作码缓存,仅供在经常使用 IIS web 主机的 Windows® 上经常使用(参见 参考资料)。开发它的重要能源在于使 PHP 成为 Windows-IIS-PHP 堆栈上的***开发平台,由于据知 APC 在该堆栈上运作的不是很好。它在性能上十分相似于 APC,且允许一个用户缓存组件,以及一个内置会话处置程序,以将 Wincache 作为一个会话处置程序间接加以应用。

•eAccelerator 是原始 PHP 缓存之一 Turck MMCache 操作码缓存(参见 参考资料)的一个派生。不同于 APC 和 Wincache,它仅是一个操作码缓存和提升器,因此它不蕴含用户缓存组件。它在 UNIX® 和 Windows 堆栈上齐全兼容,且关于不计划应用 APC 或 Wincache 提供的其余性能的站点很盛行。假设您要经常使用 memcache 这样的处置计划来为多 web 主机环境提供一个独自的用户缓存主机,那么这就是经常出现状况。

毫无不懂,一个操作码缓存是经过在每次恳求后消弭解析和编译脚本的须要来减速 PHP 的***步。成功***步之后,您应当看到照应期间和主机负载方面的改良。但是提升 PHP 可以做的不止这些,咱们接上去将加以讨论。

本节讲述的是: 经常使用操作码缓存 、下一节讲述: 提升 PHP 设置 。

© 版权声明
评论 抢沙发
加载中~
每日一言
不怕万人阻挡,只怕自己投降
Not afraid of people blocking, I'm afraid their surrender