PHP For Windows的版本一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe 一、若何挑选PHP5.4.x的VC6版本和VC9版本VC6是甚么? VC9是甚么? 那我们若何挑选下载哪个版本的PHP呢? 2、若何挑选PHP5.3的Thread Safe和Non Thread Safe版本从PHP5.2.10版本开端,有 先从字面意义上了解: 再来看PHP的两种履行体例:
而 注:官方其实不建议你将Non Thread Safe 利用于生产环境,所以我们挑选Thread Safe 版本的PHP来利用。 TS和NTSTS指Thread Safety,即线程宁静,一般在IIS以ISAPI体例加载的时候挑选这个版本。 NTS即None-Thread Safe,一般以fast cgi体例运行的时候挑选这个版本,具有更好的机能。 从2000年10月20日公布的第一个Windows版的PHP3.0.17开端的都是线程宁静的版本,这是因为与Linux/Unix体系是采取多过程的事情体例不合的是Windows体系是采取多线程的事情体例。如果在IIS下以CGI体例运行PHP会非常慢,这是因为CGI形式是建立在多过程的根本之上的,而非多线程。一般我们会把PHP建设成以ISAPI的体例来运行,ISAPI是多线程的体例,如许就快多了。但存在一个问题,很多常常利用的PHP扩展是以Linux/Unix的多过程思惟来开辟的,这些扩展在ISAPI的体例运行时就会出错搞垮IIS。是以在IIS下CGI形式才是 PHP运行的最宁静部例,但CGI形式对每个HTTP请求都需求从头加载和卸载全部PHP环境,其耗损是巨年夜的。 为了兼顾IIS下PHP的效力和宁静,微软给出了FastCGI的处理计划。FastCGI可让PHP的过程反复操纵而不是每个新的请求就重开一个过程。同时FastCGI也能够许可几个过程同时履行。如许既处理了CGI过程形式耗损太年夜的问题,又操纵上了CGI过程形式不存在线程宁静问题的上风。 是以,如果是利用ISAPI的体例来运行PHP就必须用Thread Safe(线程宁静)的版本;而用FastCGI形式运行PHP的话就没有需求用线程宁静查抄了,用None Thread Safe(NTS,非线程宁静)的版本可以或许更好的进步效力。 Thread Safety disabled 是NTS Configure Command看到VC98字样的是VC6,Compiler标明 MSVC9 (Visual C++ 2008) 的是VC9 在WIN7下:IIS7+NTS+FastCGI+vc9 是最好同伴或apache+fastcgi+nts+vc6。 |