1. 程式人生 > >PHP中VC6、VC9、TS、NTS版本的區別與用法詳解

PHP中VC6、VC9、TS、NTS版本的區別與用法詳解

進行 系統資源 stc 詳解 ron 線程安全 info 啟動 win

1. VC6與VC9的區別:

VC6版本是使用Visual Studio 6編譯器編譯的,如果你的PHP是用Apache來架設的,那你就選擇VC6版本。

VC9版本是使用Visual Studio 2008編譯器編譯的,如果你的PHP是用IIS來架設的,那你就選擇 VC9版本。

VC9版本是針對IIS服務器的版本,沒有對APACHE的支持,而VC6版本對IIS和apache都提供了支持

2.Ts與nts的區別:

Windows版的PHP從版本5.2.1開始有Thread Safe和NoneThread Safe之分。

先從字面意思上理解,Thread Safe是線程安全,執行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的CGI執行方式而耗盡系統資源。Non Thread Safe是非線程安全,在執行時不進行線程(Thread)安全檢查。

3.PHP的兩種執行方式:ISAPI和FastCGI。

ISAPI執行方式是以DLL動態庫的形式使用,可以在被用戶請求後執行,在處理完一個用戶請求後不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執行效率,所以如果是以ISAPI來執行PHP,建議選擇ThreadSafe版本;

而FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以FastCGI來執行PHP,建議選擇NonThread Safe版本。

通過phpinfo(); 查看其中的 Thread Safety 項,這個項目就是查看是否是線程安全,如果是:enabled,一般來說應該是ts版,否則是nts版

PHP中VC6、VC9、TS、NTS版本的區別與用法詳解