当前位置: 代码迷 >> 综合 >> PHPnbsp;VC9、VC6、Threadnbsp;S…
  详细解决方案

PHPnbsp;VC9、VC6、Threadnbsp;S…

热度:9   发布时间:2024-01-18 11:32:22.0
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe 是什么意思?

http://www.cftea.com/c/2009/09/QJ3ZFSSWU9GYXIJF.asp

最近在 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 5.4.10 官方下载

http://www.soft711.com/html/PHP.html

 

PHP是一种非常流行的网页服务器端脚本语言。PHP是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP无疑是另一种高效率的选项。PHP极其适合网站开发,其代码可以直接嵌 HTML代码。

PHP语法非常类似于 Perl 和 C。PHP常常搭配 Apache (web 服务器) 一起使用。不过它也支持ISAPI,并且可以运行于 Windows 的微软 IIS 平台。PHP支持很多数据库(MySQL、Informix、Oracle、Sybase、Solid、PostgreSQL、Generic ODBC 等等)。

 

PHP版本Thread Safe与Non Thread Safe的区别:

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

NTS即Non Thread Safe,一般以FastCGI方式运行的时候选择这个版本(Apache),具有更好的性能。

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