php5 NTS和TS版本的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php5 NTS和TS版本的区别相关的知识,希望对你有一定的参考价值。

php5 non-thread-safe和thread-safe这两个版本的区别

从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread
Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?下面聚友将为您讲述。
先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;Thread
Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源

再来看PHP的两种执行方式:ISAPI和FastCGI。FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以
FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP
的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip
套件)。而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。

 

 

而如果以PHP-FPM(比如搭配nginx或者Apache的mod_fastcgi)或者PHP-CGI(比如搭配Apache的mod_fcgid或者Win上的IIS)来运行PHP,则一般都不需要TS线程安全版本的PHP.

以上是关于php5 NTS和TS版本的区别的主要内容,如果未能解决你的问题,请参考以下文章

php版本选择问题.VC6和VC9的区别,TS和NTS如何选择

PHP版本中的VC6,VC9,VC11,TS,NTS区别

php的几个版本的区别

PHP TS和NTS版本选择

php5.3.2如何设置fastcgi

如何查看php 是ts还nts