목차
怎样提高php运行速度?,提高php运行速度?
백엔드 개발 PHP 튜토리얼 怎样提高php运行速度?,提高php运行速度?_PHP教程

怎样提高php运行速度?,提高php运行速度?_PHP教程

Jul 12, 2016 am 08:54 AM
주행 속도

怎样提高php运行速度?,提高php运行速度?

使用PHP的最大1个优势就是速度快。一般情况下,PHP总是具有足够的速度支持Web内容动态生成,许多时候甚至无法找出比它更快的方法。然而,当面对庞大的访问量、高负荷的应用、有限的带宽,以及其他各种带来性能瓶颈的因素时,就需要考虑怎样提高PHP的性能了。
1、代码优化
代码优化不仅仅是写出干净和清晰的代码,而是对代码进行一定的简化。可以使用Zend Optimizer来自动帮助完成这些繁杂的工作。Zend Optimizer可以从Zend Technologies的网站http://www.zend.com/免费得到,但必须同意它的许可约定,因为它不是以GPL方式发行的。它的原理很简单,即通过检测Zend引擎产生的中间代码,并对它进行优化,从而获得更高的执行速度。
在使用了Zend Optimizer后,复杂的PHP源程序的执行效率马上会得到显著提高,缺点是优化后的代码可读性下降,给代码修改带来困难。
Zend Optimizer的安装方法非常简单,只要根据用户使用的平台,下载相关的预编译版本,把下面2行代码加入到php.ini文件中,重新启动Web 服务器就行了:
zend_optimizer.optimization_level=15
zend_extension=″/path/to/ZendOptimizer.so″
zend_loader.enable=Off
额外增加的第三行代码是可选的,因为禁用zend_loader将会使优化速度更快。需要注意的是,只有在不使用Zend Encoder Runtime的时候,才可以禁用zend_loader。
2、使用缓存
如果PHP程序的规模很大,那么提高速度的办法就是使用缓存。现在已经有许多缓存方案可供选择,其中包括Zend Cache、APC和Afterburner Cache。
上面这几种都是“缓存模块”(caching modules)。第一次调用PHP文件时,缓存模块从PHP源代码生成一些中间代码,并把这些中间代码存储在Web服务器的内存中。以后再调用这些文件时,就可以直接使用内存中“编译”过的代码。这种方法确实能够改善应用的性能,因为它使得磁盘访问量减低到了最少的程度(代码已经读取和解析),代码直接在内存中运行,使得服务器响应请求的速度大大提高。
当然,缓存模块还会监视PHP源文件的变化,必要时会重新缓存页面,从而防止用户得到的页面仍旧由过时的PHP代码生成。由于缓存模块能够明显地降低服务器的负载,提高PHP应用的响应效率,因此它们非常适合于负载较大的网站使用。
Zend Cache是Zend Technologies公司开发的商业软件。在第一次运行后,PHP页面的运行速度立刻会有很大的提高,服务器的空闲资源也更多了。缺点是它不是免费的,但性价比还是很高的。
Afterburner Cache是Bware Technologies公司开发的免费缓存模块。功能与Zend Cache基本一样,但提高性能方面比不上Zend Cache。
APC(Alternative PHP Cache)是由Community Connect公司开发的另一种免费缓存模块,目前版本是2.0.4,可以从http://pecl.php.net/package/APC获得。对于产品应用来说,它的性能很稳定,而且也能在很大程度上提高响应请求的速度。
3、压缩网页内容
影响站点的访问速度还有1个重要因素,那就是下载速度。解决的办法就是压缩网页内容。对于纯文本内容而言,HTTP压缩技术可压缩至原大小的40%以下,从而提供60%以上的数据传输节约。虽然Web服务器会因为压缩导致CPU占用的略微上升,但可以节约大量用于传输的网络IO。
根据IETF规范,大部分浏览器都支持使用gzip压缩算法进行内容压缩。也就是说,可以先用gzip压缩网页内容,然后发送到客户端浏览器,浏览器在接收的时候会自动解压数据,再显示页面。这个过程对用户来说,是完全透明的。同样,压缩Web页面的内容也有不同的方法。
Mod_gzip是1种开放源代码的、标准的Apache模块,也叫互联网内容加速模块。可以将它和Apache一起编译,也可以作为DSO使用。相对于普通的浏览过程,它可以节省40%左右的流量。Mod_gzip不仅可以压缩静态的内容,如HTML、XML,而且对动态生成的,包括SQL、Java、WML、VRML等产生的内容,在服务器端进行实时压缩并传输,其压缩效率惊人,一般都为60%~85%。
压缩动态网页的内容,还可以使用class.gzip来对.php文件编码,class.gzip通过在PHP脚本的开头和结尾调用它的一些函数来压缩网页内容。如果整个站点都需要这样的压缩,可以在php.ini文件中的auto_prepend和auto_append中调用这些函数,但是会占用一定的系统开销。
PHP4.0.4推出了1种新的输出缓冲的处理手段—ob_gzhandler,它的作用和class.gzip完全一样,区别是可以直接把它加到php.ini 文件中,语法如下:
output_handler = ob_gzhandler;
这样将激活PHP的输出缓冲功能,并在发送内容前进行压缩。如果不想在这里设置,只在需要的地方才改变这个默认设置(不压缩),只要在需要压缩的PHP源程序目录中,修改一下.htaccess文件就行了,语法如下:
php_value output_handler ob_gzhandler
或者直接在PHP代码中调用它:
ob_start("ob_gzhandler");
输出缓冲的效果确实很理想,并且不会为服务器带来额外的系统开销。要注意的一点是Netscape Communicator不支持图像的压缩。因此除非知道访问者都使用Internet Explorer,否则必须禁止压缩jpeg和gif图象。
4 其它技巧
在编程时,使用一些小技巧也可以加快PHP的运行速度:
(1)用i+=1代替i=i+1,既符合c/c++的习惯,效率相对还更高。
(2)尽可能使用PHP内部函数。
(3)能使用单引号字符串时,尽量使用单引号字符串。单引号字符串的效率要高于双引号字符串。
(4)用foreach代替while遍历数组,foreach的效率明显高于while循环,而且不需要调用reset函数。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1121984.htmlTechArticle怎样提高php运行速度?,提高php运行速度? 使用PHP的最大1个优势就是速度快。一般情况下,PHP总是具有足够的速度支持Web内容动态生成,许...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C 코드가 Python보다 빠르게 실행되는 이유는 무엇입니까? C 코드가 Python보다 빠르게 실행되는 이유는 무엇입니까? Sep 11, 2023 pm 12:45 PM

이 기사에서는 C 코드가 Python보다 빠르게 실행되는 이유를 알아봅니다. Guido Van Rossum은 가장 유명한 프로그래밍 언어 중 하나인 Python을 개발했습니다. Python은 명확한 구문과 간단한 코드로 인해 초보자에게도 인기가 있습니다. Python을 배우는 것은 프로그래밍 경력을 막 시작한 사람들에게 매우 유익합니다. Python 프로그래밍 교육, 블로그, 비디오, 모듈 및 수천 개의 기타 리소스를 사용하여 이 인기 있는 언어의 모든 측면을 배울 수 있습니다. 이 과정을 마치면 GUI 개발, 웹 디자인, 시스템 관리, 복잡한 금융 거래 또는 계산, 데이터 과학, 시각화 등과 같은 현대적인 개발 활동을 수행할 수 있습니다.

실행 속도를 향상시키기 위해 win10 시스템에서 가상 메모리를 조정하는 방법 실행 속도를 향상시키기 위해 win10 시스템에서 가상 메모리를 조정하는 방법 Jul 01, 2023 pm 02:01 PM

실행 속도를 향상시키기 위해 win10 시스템에서 가상 메모리를 조정하는 방법은 무엇입니까? 컴퓨터 사용량이 점점 더 많아짐에 따라 실행 속도를 향상시키기 위해 win10 시스템의 가상 메모리를 조정해야 하는 상황이 발생할 수 있습니다. 실행 속도를 향상시키기 위해 win10 시스템의 가상 메모리를 조정해야 한다면 어떻게 해야 할까요? win10을 처리해야 합니까? 시스템이 실행 속도를 향상시키기 위해 가상 메모리를 조정합니까? 실행 속도를 향상시키기 위해 win10 시스템에서 가상 메모리를 조정하는 솔루션 수정 1. 시작 메뉴 – 모든 응용 프로그램 – Windows 시스템 – 이 컴퓨터를 클릭하고 이 컴퓨터를 마우스 오른쪽 버튼으로 클릭한 후 “속성”을 클릭하여 다음 단계로 진행합니다. 2. 열리는 시스템 창에서 왼쪽의 "고급 시스템 설정"을 클릭하여 다음 단계로 진행합니다. 3. 에서

win7의 실행 속도를 향상시키는 간단한 가이드 win7의 실행 속도를 향상시키는 간단한 가이드 Dec 26, 2023 pm 06:57 PM

win7 시스템을 사용할 때 시스템이 멈췄거나 매끄럽지 않다고 느낄 수 있습니다. 이때 시스템의 고급 설정에서 최적화하고 불필요한 애니메이션과 서비스를 꺼서 win7의 실행 속도를 향상시킬 수 있습니다. 최적화 방법을 함께 살펴보겠습니다. Win7 실행 속도 최적화 튜토리얼 1. 먼저 컴퓨터를 찾아 "속성"을 엽니다. 2. "고급 시스템 설정"을 찾습니다. 3. 성능 아래에서 "설정"을 클릭합니다. 4. "사용자 정의"를 선택하고 불필요한 콘텐츠를 선택 취소하거나 모두 선택을 취소합니다. 5. 또는 위의 "최상의 성능을 위해 조정"을 확인하십시오.

속도를 높이기 위해 Linux 시스템 최적화 속도를 높이기 위해 Linux 시스템 최적화 Jun 30, 2023 am 11:00 AM

Linux 시스템에서 시스템 실행 속도가 느려지는 문제를 해결하는 방법 Linux 운영 체제가 널리 적용됨에 따라 많은 사용자가 사용 중에 시스템 실행 속도가 너무 느리다고 보고했습니다. 이러한 종류의 문제는 업무 효율성에 영향을 미칠 뿐만 아니라 Linux 시스템에 대한 사용자의 경험을 감소시킵니다. 따라서 Linux 시스템의 느린 실행 속도 문제를 해결하는 것이 매우 중요합니다. 이 문서에서는 사용자가 시스템의 실행 속도를 향상하고 전반적인 사용자 경험을 개선하는 데 도움이 되는 몇 가지 일반적인 솔루션을 소개합니다. 쓸모없는 임시 파일을 정리하고

컴퓨터 속도에 영향을 미치는 주요 요인은 무엇입니까? 컴퓨터 속도에 영향을 미치는 주요 요인은 무엇입니까? Dec 07, 2020 am 10:45 AM

컴퓨터의 실행 속도에 영향을 미치는 주요 요인은 중앙 프로세서의 주요 주파수와 메모리의 액세스 주기입니다. 주요 주파수는 CPU의 클럭 주파수입니다. 각 클록 신호 주기는 한 단계의 동작을 완료합니다. 주 주파수는 CPU 속도를 상당 부분 반영합니다.

프로그래밍 언어 개발에서 Go 언어의 역할을 이해합니다. 프로그래밍 언어 개발에서 Go 언어의 역할을 이해합니다. Mar 29, 2024 pm 04:36 PM

제목: 프로그래밍 언어 개발에서 Go 언어의 위상 탐구 정보 기술의 활발한 발전과 함께 프로그래밍 언어는 프로그래머가 컴퓨터와 통신하는 도구로서 중요한 역할을 하고 있습니다. 많은 프로그래밍 언어 중에서 상대적으로 젊은 프로그래밍 언어인 Go(Golang이라고도 함)가 광범위한 주목을 받았습니다. 이 기사에서는 프로그래밍 언어 개발에서 Go 언어의 위상을 역사적 기원, 특성 및 특정 코드 예제 측면에서 살펴보겠습니다. 1. Go 언어의 역사와 배경 Go 언어는 2007년 구글에 의해 탄생했다.

Linux 시스템의 실행 속도를 최적화하는 방법 Linux 시스템의 실행 속도를 최적화하는 방법 Jun 30, 2023 am 10:25 AM

Linux 시스템에서 느린 시스템 실행 속도 문제를 처리하는 방법 Linux 시스템을 사용하는 과정에서 때때로 시스템 실행 속도가 느려지는 문제에 직면하게 됩니다. 이는 업무 효율성에 영향을 미칠 뿐만 아니라 시스템을 불안정하게 만들 수도 있습니다. 그렇다면 Linux 시스템에서 느린 시스템 실행 문제를 해결하는 방법은 무엇입니까? 몇 가지 일반적인 솔루션과 최적화 전략이 아래에 소개되어 있습니다. 임시 파일 및 캐시 지우기 Linux 시스템의 임시 파일 및 캐시는 많은 하드 드라이브 공간을 차지하고 시스템 속도를 저하시킬 수 있습니다. 우리는 할 수 있다

Go에는 일반적인 프로그래밍 언어 특성이 있습니까? Go에는 일반적인 프로그래밍 언어 특성이 있습니까? Mar 28, 2024 pm 03:32 PM

Go 언어는 동시성, 성능 및 규모 문제를 해결하기 위해 설계된 프로그래밍 언어로서 많은 일반적인 프로그래밍 언어의 특성을 갖도록 설계되었습니다. 이 기사에서는 몇 가지 일반적인 프로그래밍 언어 특성의 관점에서 Go 언어의 특성을 해당 코드 예제와 함께 분석합니다. 1. 정적 타이핑 정적 타이핑은 프로그래밍 언어가 컴파일 타임에 변수 유형을 결정해야 함을 의미하며 Go 언어도 정적 유형 언어입니다. 다음은 Go 언어의 정적 유형 선언을 보여주는 샘플 코드입니다.

See all articles