当前位置:首页 > PHP教程 > PHP高级教程

PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析

一共给了四个版本,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比较有效率。

另外,php还有vc6,vc9版本之分。

vc6 版本是使用 visual studio 6 编译器编译的,如果你的 php 是用 apache 来架设的,那你就选择 vc6 版本。

vc9 版本是使用 visual studio 2008 编译器编译的,如果你的 php 是用 iis 来架设的,那你就选择 vc9 版本。
【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!