高性能PHP应用开发(Yahoo公司技术专家力作)
基本信息
- 原书名: Pro PHP Application Performance
- 原出版社: Apress
- 作者: (美)Armando Padilla Tim Hawkins [作译者介绍]
- 译者: 盛海艳 刘霞
- 丛书名: 图灵程序设计丛书
- 出版社:人民邮电出版社
- ISBN:9787115264954
- 上架时间:2011-11-9
- 出版日期:2011 年11月
- 开本:16开
- 页码:177
- 版次:1-1
- 所属分类:
计算机 > 软件与程序设计 > 网络编程 > php
编辑推荐
Yahoo公司技术专家力作
PHP性能优化修炼秘籍
掌握各种重构技术和最佳实践
内容简介回到顶部↑
《高性能php应用开发》是一本广受好评的php 性能优化方面的图书,通过介绍php 的原理和相关的工具集来实现调优性能的目的。它分析和研究了web 应用程序的前端和后端,并系统地提升了其性能和运行效率。本书还介绍了php 编码最佳实践的运用以及如何使用工具来应用缓存技术。另外书中也涉及了对web 服务器的优化和数据库的优化。
《高性能php应用开发》适合php 开发人员阅读。
《高性能php应用开发》适合php 开发人员阅读。
作译者回到顶部↑
本书提供作译者介绍
Armando Padilla专注于PHP技术已有13年,领导并全面参与了基于LAMP的多个网络应用程序。Armando目前是Yahoo的高级工程师,曾负责多个著名的高流量应用,例如2010年冬奥会和2010年南非世界杯网站Yahoo手机新闻应用程序。
Tim Hawkins早在1993年就创建了loot.com站点,这是世界上最早的分类门户站点之一。之后他帮助Yahoo欧洲公司打造了很多关键产品,例如 搜索、本地搜索、邮件、即时通信软件和社会化网络等。他目前在美国的一家大型电子零售公司管理庞大的海外团队,负责开发和部署下一代电子.. << 查看详细
Tim Hawkins早在1993年就创建了loot.com站点,这是世界上最早的分类门户站点之一。之后他帮助Yahoo欧洲公司打造了很多关键产品,例如 搜索、本地搜索、邮件、即时通信软件和社会化网络等。他目前在美国的一家大型电子零售公司管理庞大的海外团队,负责开发和部署下一代电子.. << 查看详细
目录回到顶部↑
《高性能php应用开发》
第1 章 基准测试技术 1
1.1 php 应用程序栈 1
1.2 基准测试实用工具 2
1.3 定义请求/响应生命周期 3
1.4 apache benchmark 4
1.4.1 安装apache benchmark 4
1.4.2 运行apache benchmark 5
1.4.3 弄清响应的含义 6
1.4.4 ab 选项标记 8
1.4.5 ab 陷阱 11
1.5 siege 12
1.5.1 安装siege 12
1.5.2 运行siege 13
1.5.3 分析结果 13
1.5.4 siege 选项标记 15
1.5.5 测试很多url 15
1.6 影响基准测试数字 16
1.6.1 地理位置 16
1.6.2 旅行的数据包 16
第1 章 基准测试技术 1
1.1 php 应用程序栈 1
1.2 基准测试实用工具 2
1.3 定义请求/响应生命周期 3
1.4 apache benchmark 4
1.4.1 安装apache benchmark 4
1.4.2 运行apache benchmark 5
1.4.3 弄清响应的含义 6
1.4.4 ab 选项标记 8
1.4.5 ab 陷阱 11
1.5 siege 12
1.5.1 安装siege 12
1.5.2 运行siege 13
1.5.3 分析结果 13
1.5.4 siege 选项标记 15
1.5.5 测试很多url 15
1.6 影响基准测试数字 16
1.6.1 地理位置 16
1.6.2 旅行的数据包 16
译者序回到顶部↑
作为一种HTML内嵌式语言,PHP的历史可追溯至1994年,它是一种在服务器端执行的脚本语言,其风格有点类似C语言,但除了融合它自己独创的语法和C语言的语法之外,其中也有Java语法和Perl语法的影子,因此可称得上是集几大语言精华于一身的优秀语言。正如我们所熟知的,它最出众的特点是能够快速执行动态网页。
回顾一下PHP的发展历史,可粗略地分为几个阶段。1994年,Rasmus Lerdorf创建了PHP,这位PHP之父最初只是用它来统计自己网站的流量。1995年,他以PHP Tools这个名称对外发布了第一个版本,这就是最早的PHP 1.0,功能也十分简单。随着PHP的使用越来越广泛,大量开发人员开始加入到PHP的开发阵营中。在同年,PHP 2.0发布了。这一版加入了对MySQL的支持,从此PHP作为开发动态网页的卓越工具也得到了业内的一致认可。1997年和2000年分别又发布了PHP 3和PHP 4,大量新特性出现在这两个版本中。目前大多数人使用的主流版本是PHP 5,这是在2008年发布的。但无论你使用的是哪个版本,都会从本书中获益,因为本书的核心是基本原理,可以适用在所有版本上。
本书的结构很清晰,分为两大部分,Web应用程序的前端和后端。第一部分针对前端主要介绍了如何发现和消除浏览器在呈现网页过程中的瓶颈,此外还介绍了很多PHP编码的最佳实践以及如何运用缓存技术。第二部分则介绍后端,详细讲解了很多类型的Web服务器软件以及如何优化它们。
本书从基准测试技术开始讲起,开篇即引入了两个测试工具:Apache Benchmark 和Siege。然后由浅入深依次介绍了PHP代码优化、Opcode缓存、变量缓存、Apache Web服务器优化,以及最后的数据库优化。值得注意的是,基准测试几乎贯穿了整本书的所有章节,大部分章节中都穿插了ab和Siege的使用,并给出了详细的图解来说明测试的过程和结果,这是本书的一大特色。
毫无疑问,本书最适合PHP开发人员阅读,但同时也适用于对优化大型网络应用程序感兴趣的各类人员,包括项目经理、工程师和测试人员。
最后,衷心感谢人民邮电出版社图灵公司各位编辑在翻译工作中给予的帮助和宝贵意见。由于译者水平有限,在翻译过程中难免会出现一些错误,恳请读者批评指正。
回顾一下PHP的发展历史,可粗略地分为几个阶段。1994年,Rasmus Lerdorf创建了PHP,这位PHP之父最初只是用它来统计自己网站的流量。1995年,他以PHP Tools这个名称对外发布了第一个版本,这就是最早的PHP 1.0,功能也十分简单。随着PHP的使用越来越广泛,大量开发人员开始加入到PHP的开发阵营中。在同年,PHP 2.0发布了。这一版加入了对MySQL的支持,从此PHP作为开发动态网页的卓越工具也得到了业内的一致认可。1997年和2000年分别又发布了PHP 3和PHP 4,大量新特性出现在这两个版本中。目前大多数人使用的主流版本是PHP 5,这是在2008年发布的。但无论你使用的是哪个版本,都会从本书中获益,因为本书的核心是基本原理,可以适用在所有版本上。
本书的结构很清晰,分为两大部分,Web应用程序的前端和后端。第一部分针对前端主要介绍了如何发现和消除浏览器在呈现网页过程中的瓶颈,此外还介绍了很多PHP编码的最佳实践以及如何运用缓存技术。第二部分则介绍后端,详细讲解了很多类型的Web服务器软件以及如何优化它们。
本书从基准测试技术开始讲起,开篇即引入了两个测试工具:Apache Benchmark 和Siege。然后由浅入深依次介绍了PHP代码优化、Opcode缓存、变量缓存、Apache Web服务器优化,以及最后的数据库优化。值得注意的是,基准测试几乎贯穿了整本书的所有章节,大部分章节中都穿插了ab和Siege的使用,并给出了详细的图解来说明测试的过程和结果,这是本书的一大特色。
毫无疑问,本书最适合PHP开发人员阅读,但同时也适用于对优化大型网络应用程序感兴趣的各类人员,包括项目经理、工程师和测试人员。
最后,衷心感谢人民邮电出版社图灵公司各位编辑在翻译工作中给予的帮助和宝贵意见。由于译者水平有限,在翻译过程中难免会出现一些错误,恳请读者批评指正。
前言回到顶部↑
如果你我是同道中人,你可能正在当地书店里拿起本书,或者正在网上读这份简介,尝试找找对这本书的感觉。要么你是一位好学的PHP工程师,急于探究构建大型应用程序的奥妙之处,要么你刚刚承担了一项支持高流量PHP应用程序的开发任务。这本书将非常适合像你这样对PHP有透彻了解并且熟悉这种语言的PHP开发人员——一位想深入研究PHP原理和工具集并且想揭开PHP脚本神秘面纱的人。
本书的目的是全面介绍在优化PHP应用程序时所需考虑的组件。它涵盖了所有这些组件,从JavaScript到正在运行应用程序的Web服务器软件。
本书分为两大部分,Web应用程序的前端和后端。第一部分介绍前端,帮助你确定在呈现过程中浏览器遇到的瓶颈以及如何消除这些瓶颈。这一部分还涉及PHP编码最佳实践的运用,如何使用很多可用的工具来应用缓存技术。第二部分介绍后端,介绍了很多类型的Web服务器软件,如何优化软件,以及优化数据库的技巧。
概述
下面是各章节内容的详细说明。
第1章:基准测试技术
我们首先确定测量应用程序性能所需的工具。我们将学习业界最受欢迎的两个基准测试工具的安装、结果读取和应用,这两个工具即Apache Benchmark(简称ab)和Siege。还将介绍如何使用并发以及特定时间段内的模拟负载来运行模拟负载实验。
第2章:提高客户端下载和呈现性能
应用程序性能不仅仅与PHP代码有关。这一章将重点介绍浏览器如何呈现内容。我们将学习对JavaScript进行基准测试的可用工具,测量浏览器尝试加载的数据量,以及查看浏览器加载内容的效率。我们还将学会如何通过安装和使用Firebug、Page Speed和Yahoo!的YSlow来完成这些工作。使用这些工具,我们可通过确认JavaScript、Image的性能是否提高来优化一个简单的网页。这一章内容比较浅显,所以并不要求你是JavaScript方面的专家。
第3章:PHP代码优化
这一章开始研究PHP代码。我们将学习一些有助于提高PHP性能的最佳编码实践,还将了解如何构造一个快速运行的for循环,如何使用最佳PHP函数来包含文件,并且将重点了解如何使用和安装VLD、strace和Xdebug。在安装VLD和strace之后,就可以对Opcode以及运行PHP脚本所需的Apache C级别的处理进行分析了。使用Xdebug分析代码,我们将发现PHP代码自身的瓶颈所在。
第4章:Opcode缓存
了解PHP的生命周期对于优化来说是非常重要的,所以这一章将介绍生命周期。我们将学习在用户请求期间PHP所执行的操作步骤,并找出有哪些地方可以使用Opcode缓存器进行优化。还将学习如何安装和配置Opcode缓存器,如APC、XCache和eAccelerator,同时还将对前后脚本进行基准测试,以便查看缓存Opcode后的收益。
第5章:变量缓存
在第4章介绍的缓存信息的基础上,我们将介绍变量缓存工具,如Memcached,以及使用APC存储信息。我们将学习如何安装、配置和实现一个简单的示例以便使你熟悉软件,另外还将介绍一个使用数据库结果集的实际示例。
第6章:选择正确的Web服务器
一直以来Apache都是一枝独秀,它是大型部署实际的标准。但最近该领域还出现了一些令人兴奋的新面孔。这一章将详细介绍Apache,并将其与新出现的Lighttpd和Nginx做一下对比。
第7章:优化Web服务器和内容交付
Apache是非常出色的Web服务器程序包,虽然它是开箱即用的,但稍加调整并且掌握一些技巧后,它的性能、持久性和稳定性会更高,它也会发挥出它真实的功能。这一章还将讨论如何对其进行扩展,以支持更高流量和用户负载的一些秘诀。
第8章:数据库优化
本书的目的是全面介绍在优化PHP应用程序时所需考虑的组件。它涵盖了所有这些组件,从JavaScript到正在运行应用程序的Web服务器软件。
本书分为两大部分,Web应用程序的前端和后端。第一部分介绍前端,帮助你确定在呈现过程中浏览器遇到的瓶颈以及如何消除这些瓶颈。这一部分还涉及PHP编码最佳实践的运用,如何使用很多可用的工具来应用缓存技术。第二部分介绍后端,介绍了很多类型的Web服务器软件,如何优化软件,以及优化数据库的技巧。
概述
下面是各章节内容的详细说明。
第1章:基准测试技术
我们首先确定测量应用程序性能所需的工具。我们将学习业界最受欢迎的两个基准测试工具的安装、结果读取和应用,这两个工具即Apache Benchmark(简称ab)和Siege。还将介绍如何使用并发以及特定时间段内的模拟负载来运行模拟负载实验。
第2章:提高客户端下载和呈现性能
应用程序性能不仅仅与PHP代码有关。这一章将重点介绍浏览器如何呈现内容。我们将学习对JavaScript进行基准测试的可用工具,测量浏览器尝试加载的数据量,以及查看浏览器加载内容的效率。我们还将学会如何通过安装和使用Firebug、Page Speed和Yahoo!的YSlow来完成这些工作。使用这些工具,我们可通过确认JavaScript、Image的性能是否提高来优化一个简单的网页。这一章内容比较浅显,所以并不要求你是JavaScript方面的专家。
第3章:PHP代码优化
这一章开始研究PHP代码。我们将学习一些有助于提高PHP性能的最佳编码实践,还将了解如何构造一个快速运行的for循环,如何使用最佳PHP函数来包含文件,并且将重点了解如何使用和安装VLD、strace和Xdebug。在安装VLD和strace之后,就可以对Opcode以及运行PHP脚本所需的Apache C级别的处理进行分析了。使用Xdebug分析代码,我们将发现PHP代码自身的瓶颈所在。
第4章:Opcode缓存
了解PHP的生命周期对于优化来说是非常重要的,所以这一章将介绍生命周期。我们将学习在用户请求期间PHP所执行的操作步骤,并找出有哪些地方可以使用Opcode缓存器进行优化。还将学习如何安装和配置Opcode缓存器,如APC、XCache和eAccelerator,同时还将对前后脚本进行基准测试,以便查看缓存Opcode后的收益。
第5章:变量缓存
在第4章介绍的缓存信息的基础上,我们将介绍变量缓存工具,如Memcached,以及使用APC存储信息。我们将学习如何安装、配置和实现一个简单的示例以便使你熟悉软件,另外还将介绍一个使用数据库结果集的实际示例。
第6章:选择正确的Web服务器
一直以来Apache都是一枝独秀,它是大型部署实际的标准。但最近该领域还出现了一些令人兴奋的新面孔。这一章将详细介绍Apache,并将其与新出现的Lighttpd和Nginx做一下对比。
第7章:优化Web服务器和内容交付
Apache是非常出色的Web服务器程序包,虽然它是开箱即用的,但稍加调整并且掌握一些技巧后,它的性能、持久性和稳定性会更高,它也会发挥出它真实的功能。这一章还将讨论如何对其进行扩展,以支持更高流量和用户负载的一些秘诀。
第8章:数据库优化







点击看大图


加载中...

