程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP5.3的VC9、VC6、Thread Safe、Non Thread Safe的區別

PHP5.3的VC9、VC6、Thread Safe、Non Thread Safe的區別

編輯:關於PHP編程

      PHP一共給了四個版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe,這讓我這個菜鳥頭疼啊,還好 PHP 官網提供下載的地方左邊有個英文 choose 我看懂了,我估摸著就是如何來選擇版本的意思吧,於是開始查字典及上網查找,終於看明白了具體意思,拿來做個備忘先。

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

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

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

再來看 PHP 的兩種執行方式:ISAPI 和 FastCGI。

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

FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS 7)執行 PHP ,都建議下載、執行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)。

而線程安全檢查正是為ISAPI方式的PHP准備的,因為有許多php模塊都不是線程安全的,所以需要使用Thread Safe的PHP。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved