php版本的选择.doc_第1页
php版本的选择.doc_第2页
php版本的选择.doc_第3页
php版本的选择.doc_第4页
php版本的选择.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2011-41Windows里PHP5.x的VC6、VC9、Thread Safe、Non Thread Safe各种版本区别发表于: Nginx, PHP, Web Server, Windows, 个人日记 | 作者: 谋万世全局者 标签: Non Thread Safe,PHP,Thread Safe,VC6,VC9,Windows,版本区别PS:昨晚想在win7里调试个php程序,顺便试试nginx在win里的运行效率怎样。就配了一下。好长时间没在win里跑php了,去php官网一看,发现win版本的php居然有好几种。PHP官网(/download/)5.3一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe。我囧我开始就下了个PHP5.3的VC9 x86 Thread Safe版本,配合nginx用FastCGI模式运行,开始一切正常。30分钟左右,突然提示FastCGI程序遇到问题关闭。之后几次我重启FastCGI都还是如此。切换到IIS7.5里跑,又很正常。后来一想,会不会是php版本的问题,之后用VC9 x86 Non Thread Safe版本跑,马上恢复正常。为什么会出现这个问题呢?下面简单总结一下这几个版本的区别:FastCGI程序非法关闭的日志信息:- - 100021000800000000000001430ApplicationIBM-T43- php-cgi.exe4d81e480php5ts.dll4d81e545c0000005000f75e0a4801cbf003a7ad378aD:ServerPHPv5.3php-cgi.exeD:ServerPHPv5.3php5ts.dlle58e10fa-5bf6-11e0-8fd9-005056c00008一、如何选择PHP5.3的VC9版本和VC6版本VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。VC9版本是使用Visual Studio 2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择VC9版本。二、如何选择PHP5.3的Thread Safe和Non Thread Safe版本先从字面意思上理解,Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。再来看PHP的两种执行方式:ISAPI和FastCGI。ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本;而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。总结:如果是以FastCGI方式(搭配IIS、apache、nginx)来执行PHP ,都建议下载、执行 non-thread safe 版本的 PHP(PHP的二进位档有两种包装方式:msi 、zip ,建议使用zip解压包)。而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。在生产环境里跑php,还是Linux为王。如果一定需要win环境,建议用Win Server 2008 R2的IIS 7.5跑。PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe 是什么意思?2010-06-02 20:43:11 来源:源码之家 站长整理 【大 中 小】 浏览: 1386 次 我最近在 PHP 官网上看到又有新版的 PHP 下载了,于是上去找找 For Windows 的版本,可是一看确傻眼了,一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe,这让我这个菜鸟头疼啊,还好 PHP 官网提供下载的地方左边有个英文 choose 我看懂了,我估摸着就是如何来选择版本的意思吧,于是开始查字典及上网查找,终于看明白了具体意思,拿来做个备忘先。 一、如何选择 PHP5.3 的 VC9 版本和 VC6 版本 VC6 版本是使用 Visual Studio 6 编译器编译的,如果你的 PHP 是用 Apache 来架设的,那你就选择 VC6 版本。 VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你的 PHP 是用 IIS 来架设的,那你就选择 VC9 版本。 二、如何选择 PHP5.3 的 Thread Safe 和 Non Thread Safe 版本 先从字面意思上理解,Thread Safe 是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源。Non Thread Safe 是非线程安全,在执行时不进行线程(Thread)安全检查。 再来看 PHP 的两种执行方式:ISAPI 和 FastCGI。 ISAPI 执行方式是以 DLL 动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以 ISAPI 来执行 PHP,建议选择 Thread Safe 版本; 而 FastCGI 执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI 来执行 PHP,建议选择 Non Thread Safe 版本。 再来看PHP的两种执行方式:ISAPI和FastCGI。 FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二进位档有两种包装方式:msi 、zip ,请下载 zip 套件)。 而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。 所以,对于PHP5.2选择Thread Safe版本安装,而对于PHP5.3则下载None-Thread Safe,执行PHP比较有效率。 另外,PH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论