当前位置:首页 > 生活百科

iis运行php久了非常慢(iis运行php慢解决方法)

栏目:生活百科日期:2024-12-05浏览:0

PHP版本VC6与VC9、Thread Safe与None-Thread Safe等的区别

最近发现很多PHP程序员对PHP版本知识了解不是很清楚,自己也看了不少类似的文章,还是感觉不够明确和全面,网上的结论又都是模棱两可,在此,给出最完整甚至武断的解释。

本文讲解:VC6与VC9,Thread Safety与None-Thread Safe,Apache module与fastcgi的区别与选择。

PHP的大版本主要分三支:PHP4/PHP5/PHP6

  其中,PHP4由于太古老、对OO支持不力已基本被淘汰,请无视PHP4。

  PHP6由于基本没有生产线上的应用,还基本只是一款概念产品,很多功能已在PHP5.3.3上实现,所以也不详述,请无视PHP6。

  PHP5的版本主要分四支:PHP5.2之前的版本、PHP5.2.X、PHP5.3和日前发布的PHP5.4。

那我们应该如何选择适用自己项目的版本呢?

PHP5.2之前的版本不值得考虑,因为某些功能缺陷或者BUG,PHP5.2之前的版本。PHP5.4还处于Beta试用的版本号,非稳定版本,请无视PHP5.4。

  主流PHP程序对PHP5.2.X的兼容性最好,而每次版本号的升级带来的都是安全性和稳定性的改善,所以宜挑选最新的版本。目前PHP5.2系列最新的是PHP5.2.17。

  而如果产品是自己开发自己使用,PHP5.3在某些方面更具优势,在稳定性上更胜一筹,增加了很多PHP5.2所不具有的功能,比如内置php-fpm、更完善的垃圾回收算法、命名空间的引入、sqlite3的支持等等,是部署项目值得考虑的版本,强烈推荐PHP5.3.3。

  除了版本号的不同,同一版本号的PHP版本也有区别,并且在选择PHP扩展的时候需要注意。

install版:可执行的MSI格式安装包。ZIP版:解压即可用。和install版无区别。建议选择ZIP版。DEBUG版:请无视。

VC6与VC9

   对于VC6还是VC9版本的选择,PHP官方网站有详细的描述,原文如下:

Which version do I choose?If you are using PHP with Apache 1 or Apache2 from apache.org you need to use the VC6 versions of PHPIf you are using PHP with IIS you should use the VC9 versions of PHPVC6 Versions are compiled with the legacy Visual Studio 6 compilerVC9 Versions are compiled with the Visual Studio 2008 compiler and have improvements in performance and stability. The VC9 versions require you to have the Microsoft 2008 C++ Runtime (x86) or the Microsoft 2008 C++ Runtime (x64) installedDo NOT use VC9 version with apache.org binaries我该选择哪个版本?如果你在apache1或者apache2下使用PHP,你应该选择VC6的版本如果你在IIS下使用PHP应该选择VC9的版本VC6的版本使用visual studio6编译VC9使用Visual Studio 2008编译,并且改进了性能和稳定性。VC9版本的PHP需要你安装Microsoft 2008 C++ Runtime不要在apache下使用VC9的版本

TS和NTS

TS指Thread Safety,即线程安全,一般在IIS以ISAPI方式加载的时候选择这个版本。

NTS即None-Thread Safe,一般以fast cgi方式运行的时候选择这个版本,具有更好的性能。

  从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用多进程的工作方式不同的是Windows系统是采用多线程的工作方式。如果在IIS下以CGI方式运行PHP会非常慢,这是由于CGI模式是建立在多进程的基础之上的,而非多线程。一般我们会把PHP配置成以ISAPI的方式来运行,ISAPI是多线程的方式,这样就快多了。但存在一个问题,很多常用的PHP扩展是以Linux/Unix的多进程思想来开发的,这些扩展在ISAPI的方式运行时就会出错搞垮IIS。因此在IIS下CGI模式才是 PHP运行的最安全方式,但CGI模式对于每个HTTP请求都需要重新加载和卸载整个PHP环境,其消耗是巨大的。

  为了兼顾IIS下PHP的效率和安全,微软给出了FastCGI的解决方案。FastCGI可以让PHP的进程重复利用而不是每一个新的请求就重开一个进程。同时FastCGI也可以允许几个进程同时执行。这样既解决了CGI进程模式消耗太大的问题,又利用上了CGI进程模式不存在线程安全问题的优势。

  因此,如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本;而用FastCGI模式运行PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率。

如何查看当前运行的PHP的版本?一个很简单的办法就是phpinfo();

Thread Safety disabled是NTS,enabled是TS

Configure Command看到VC98字样的是VC6,Compiler标明 MSVC9 (Visual C++ 2008) 的是VC9

在WIN7下:IIS7+NTS+FastCGI+vc9 是最佳搭档或者apache+fastcgi+nts+vc6。

在WINXP下:Apache+TS+Apache module +vc6最合适的搭档。

“iis运行php久了非常慢(iis运行php慢解决方法)” 的相关文章

创业计划书封面怎么设计,2020策划书封面模板

开始制作1、首先找一张图片素材,插入Word文档,然后设置一下环绕方式为「浮于文字上方」,然后将其拖到文档中部调整一下大小。2、插入公司Logo,然后插入一个文...

google搜索技巧你都知道哪些,谷歌搜索技巧快速排名

高效利用搜索引擎是这个时代外贸人的必修课,它可以为你节省大量的时间,得到更精确的搜索结果。以下介绍一些外贸工作中经常会使用到的谷歌搜索指令。1.site:在某个...

创业策划书模板,大学生如何写好创业计划书

《创业项目计划书范文》1.0花卉项目概要1.1项目要点1.2项目背景1.3项目核心竞争力1.4项目内容与特点1.4.1体系架构1.4.2技术或资源特点1.4.3...

市场营销环境分析步骤,简述环境分析在市场营销中的应用

第三期:市场营销环境分析很多外部因素会影响企业营销活动,比如不同的地区、不同的民族在饮食、服装、居住等方面都各有特点,不同的特点会影响消费者的需求和购买行为。本...

nfc手机有哪些型号(目前的手机有nfc功能)

手机充电的最终形态估计要取消充电口,采用无线充电形式。那么目前市面上支持无线充电的机型大都定位较高,中低端机型不会配置。今天就有小伙伴让我推荐一款中端机型,能同...

微信发不了文件是怎么回事(文件内存过大的发送技巧)

微信大于200M文件不能发送?这3个妙招别错过,学会就是涨知识微信是我们日常使用得很频繁的工具,生活、娱乐、工作等方方面面都有涉及。办公中,经常需要使用发送大于...

微信聊天记录怎么修复,一招快速恢复方法

微信聊天记录怎么恢复?接连几天的大雨,让不少朋友都有点烦躁,小李也是。这不,前些天还正好和女朋友吵架了,这天天的瓢泼大雨加上突然的吵架,让小李突然放弃了社交的欲...

如何开通创业板交易,2020最新创业板的交易规则

创业板市场是二板市场,是对主板市场的补充,主要面向创新型企业、中小型企业以及高新技术型企业。那么创业板股票怎么买?怎样才能买创业板股票呢?1、首先大家通过简单的...

excel背景色怎么设置(excel页面底色设置方法)

Excel中,数据一多,看串行,那是常有的事。那,怎么避免类似情况呢?隔行填充背景色,倒是不错的方式。那,怎么才能快速填充背景色呢?方法1:使用粘贴格式的方式先...

广告成本预算大概是多少(3分钟了解广告预算)

咱们从事SEM的优化师都知道,我们在日常的广告工作中,都会有一定的预算,从一天几十,几百,甚至几千美金。那么怎样合理而有效地花掉这些广告预算,是一件非常重要的工...