PHP 5.3 下載時 VC9、VC6、Thread Safe、Non Thread Safe的區(qū)別分析
更新時間:2011年03月28日 00:17:58 作者:
我最近在 PHP 官網(wǎng)上看到又有新版的 PHP 下載了,于是上去找找 For Windows 的版本,可是一看確傻眼了
一共給了四個版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe,這讓我這個菜鳥頭疼啊,還好 PHP 官網(wǎng)提供下載的地方左邊有個英文 choose 我看懂了,我估摸著就是如何來選擇版本的意思吧,于是開始查字典及上網(wǎng)查找,終于看明白了具體意思,拿來做個備忘先。
一、如何選擇 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 是線程安全,執(zhí)行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的 CGI 執(zhí)行方式而耗盡系統(tǒng)資源。Non Thread Safe 是非線程安全,在執(zhí)行時不進行線程(Thread)安全檢查。
再來看 PHP 的兩種執(zhí)行方式:ISAPI 和 FastCGI。
ISAPI 執(zhí)行方式是以 DLL 動態(tài)庫的形式使用,可以在被用戶請求后執(zhí)行,在處理完一個用戶請求后不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執(zhí)行效率,所以如果是以 ISAPI 來執(zhí)行 PHP,建議選擇 Thread Safe 版本;
而 FastCGI 執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執(zhí)行效率,所以,如果是以 FastCGI 來執(zhí)行 PHP,建議選擇 Non Thread Safe 版本。
再來看PHP的兩種執(zhí)行方式:ISAPI和FastCGI。
FastCGI執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執(zhí)行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS 7)執(zhí)行 PHP ,都建議下載、執(zhí)行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)。
而線程安全檢查正是為ISAPI方式的PHP準備的,因為有許多php模塊都不是線程安全的,所以需要使用Thread Safe的PHP。
所以,對于PHP5.2選擇Thread Safe版本安裝,而對于PHP5.3則下載None-Thread Safe,執(zhí)行PHP比較有效率。
另外,PHP還有VC6,VC9版本之分。
VC6 版本是使用 Visual Studio 6 編譯器編譯的,如果你的 PHP 是用 Apache 來架設的,那你就選擇 VC6 版本。
VC9 版本是使用 Visual Studio 2008 編譯器編譯的,如果你的 PHP 是用 IIS 來架設的,那你就選擇 VC9 版本。
一、如何選擇 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 是線程安全,執(zhí)行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的 CGI 執(zhí)行方式而耗盡系統(tǒng)資源。Non Thread Safe 是非線程安全,在執(zhí)行時不進行線程(Thread)安全檢查。
再來看 PHP 的兩種執(zhí)行方式:ISAPI 和 FastCGI。
ISAPI 執(zhí)行方式是以 DLL 動態(tài)庫的形式使用,可以在被用戶請求后執(zhí)行,在處理完一個用戶請求后不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執(zhí)行效率,所以如果是以 ISAPI 來執(zhí)行 PHP,建議選擇 Thread Safe 版本;
而 FastCGI 執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執(zhí)行效率,所以,如果是以 FastCGI 來執(zhí)行 PHP,建議選擇 Non Thread Safe 版本。
再來看PHP的兩種執(zhí)行方式:ISAPI和FastCGI。
FastCGI執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執(zhí)行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS 7)執(zhí)行 PHP ,都建議下載、執(zhí)行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)。
而線程安全檢查正是為ISAPI方式的PHP準備的,因為有許多php模塊都不是線程安全的,所以需要使用Thread Safe的PHP。
所以,對于PHP5.2選擇Thread Safe版本安裝,而對于PHP5.3則下載None-Thread Safe,執(zhí)行PHP比較有效率。
另外,PHP還有VC6,VC9版本之分。
VC6 版本是使用 Visual Studio 6 編譯器編譯的,如果你的 PHP 是用 Apache 來架設的,那你就選擇 VC6 版本。
VC9 版本是使用 Visual Studio 2008 編譯器編譯的,如果你的 PHP 是用 IIS 來架設的,那你就選擇 VC9 版本。
您可能感興趣的文章:
- php中安全模式safe_mode配置教程
- PHP3 safe_mode 失效漏洞
- PHP錯誤提示It is not safe to rely on the system……的解決方法
- 解決php的“It is not safe to rely on the system’s timezone settings”問題
- PHP date()函數(shù)警告: It is not safe to rely on the system解決方法
- 解析PHP中VC6 X86和VC9 X86的區(qū)別及 Non Thread Safe的意思
- php5 non-thread-safe和thread-safe這兩個版本的區(qū)別分析
- sourcesafe管理phpproj文件的補充說明(downmoon)
- PHP safe_mode開啟對于PHP系統(tǒng)函數(shù)有什么影響
相關文章
如何用PHP websocket實現(xiàn)網(wǎng)頁實時聊天
websocket作為HTML5里一個新的特性一直很受人關注,因為它真的非???,打破了http“請求-響應”的常規(guī)思維,實現(xiàn)了服務器向客戶端主動推送消息,本文介紹如何使用PHP和JS應用websocket實現(xiàn)一個網(wǎng)頁實時聊天室。2021-05-05MySQL的FIND_IN_SET函數(shù)使用方法分享
有個文章表里面有個type字段,他存儲的是文章類型,有 1頭條,2推薦,3熱點,4圖文 …..11,12,13等等2012-03-03php實現(xiàn)獲取農(nóng)歷(陰歷)、節(jié)日、節(jié)氣的類與用法示例
這篇文章主要介紹了php實現(xiàn)獲取農(nóng)歷(陰歷)、節(jié)日、節(jié)氣的類與用法,結合實例形式分析了php日期工具類Lunar的具體定義與獲取農(nóng)歷日期、節(jié)氣等相關操作技巧,需要的朋友可以參考下2017-11-11php實現(xiàn)模擬登陸方正教務系統(tǒng)抓取課表
這篇文章主要介紹了php實現(xiàn)模擬登陸方正教務系統(tǒng)抓取課表的相關資料,需要的朋友可以參考下2015-05-05