PHP版本VC6和VC9、Non Thread Safe和Thread Safe的区别

链接:http://www.cnblogs.com/neve/articles/1863853.html

想更新个PHP的版本,PHP的windows版本已经分离出来了,见http://windows.php.net/download/,但是上面有很多不同的版本,包括VC9, VC6,  x86 Non Thread Safe, x86 Thread Safe, 好像没有x64版本的,(现在特别喜欢用64位的软件),版本有点多,主要的区别和如何选择不同的版本如下:

If you are using PHP with Apache 1 or Apache2 from apache.org you need to use the VC6 versions of PHP

If you are using PHP with IIS you should use the VC9 versions of PHP

VC6 Versions are compiled with the legacy Visual Studio 6 compiler

VC9 Versions are compiled with the Visual Studio 2008 compiler and have improvements in performance and stability. The VC9 versions require you to have the Microsoft 2008 C++ Runtime (x86) or the Microsoft 2008 C++ Runtime (x64) installed

Do NOT use VC9 version with apache.org binaries

VC6 版本是使用 Visual Studio 6 编译器编译的,如果你是在windows下使用Apache+PHP的,请选择VC6版本。

VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你是在windows下使用IIS+PHP的,请选择VC9版本。

Non Thread Safe就是非线程安全,在执行时不进行线程(Thread)安全检查;
Non Thread Safe 是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源;

Windows下的PHP 主要有两种执行方式:ISAPI 和 FastCGI。

      ISAPI 执行方式是以 DLL
动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以
ISAPI 来执行 PHP,建议选择 Thread Safe 版本;

      FastCGI 执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI 来执行 PHP,建议选择 Non Thread Safe 版本。

      官方并不建议你将Non Thread Safe 应用于生产环境。

下载地址:http://windows.php.net/download

 

时间: 2024-08-02 12:26:26

PHP版本VC6和VC9、Non Thread Safe和Thread Safe的区别的相关文章

PHP版本VC6与VC9/VC11/VC14、Thread Safe与None-Thread Safe等的区别

原文:PHP版本VC6与VC9/VC11/VC14.Thread Safe与None-Thread Safe等的区别        最近正好在弄一个PHP的程序,在这之前一直没有怎么以接触,发现对PHP版本知识了解不是很清楚,自己看了不少类似的文章,还是感觉不够明确和全面,        网上的结论又都是模棱两可,在此,给出最完整甚至武断的解释.(内面部分内容是摘自其它程序员的博文)       本文讲解:VC6与VC9,Thread Safety与None-Thread Safe,Apache

php vc6 vc9:PHP版本VC6与VC9、Thread Safe与None-Thread Safe等的区别

最近发现很多PHP程序员对PHP版本知识了解不是很清楚,自己也看了不少类似的文章,还是感觉不够明确和全面,网上的结论又都是模棱两可,在此,给出最完整甚至武断的解释.本文讲解:VC6与VC9,Thread Safety与None-Thread Safe,Apache module与fastcgi的区别与选择.PHP的大版本主要分三支:PHP4/PHP5/PHP6其中,PHP4由于太古老.对OO支持不力已基本被淘汰,请无视PHP4.PHP6由于基本没有生产线上的应用,还基本只是一款概念产品,很多功能

PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解_php基础

VC6:legacy Visual Studio 6 compiler,就是使用这个编译器编译的.VC9:Visual Studio 2008 compiler,就是用微软的VS编辑器编译的.由于apache.org只提供VC6的版本,所以使用原版apache时只能使用VC6.(www.apachelounge.com上有apache VC9的版本提供,应该可以和PHP VC9配合,没用过)TS:Thread Safe 线程安全, 执行时会进行线程(Thread)安全检查,以防止有新要求就启动新

PHP中VC6、VC9、TS、NTS版本的区别与用法详解

Thread safe(线程安全)是运行在Apache上以模块的PHP上,如果你以CGI的模式运行PHP,请选择非线程安全模式(non-thread safe). 1. VC6与VC9的区别: VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本. VC9版本是使用Visual Studio 2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择 VC9版本. VC9版本是针对IIS服务器的版本,没有对APACHE的

PHP中VC6、VC9、TS、NTS版本的区别与用法详解_php技巧

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和NoneThr

转 Java中User Thread和Daemon Thread的区别

Java将线程分为User线程和Daemon线程两种.通常Daemon线程用来为User线程提供某些服务.程序的main()方法线程是一个User进程.User进程创建的进程为User进程.当所有的User线程结束后,JVM才会结束. 通过在一个线程对象上调用setDaemon(true),可以将user线程创建的线程明确地设置成Daemon线程.例如,时钟处理线程.idle线程.垃圾回收线程.屏幕更新线程等,都是Daemon线程.通常新创建的线程会从创建它的进程哪里继承daemon状态,除非明

Thread.Sleep(1);Thread.Sleep(10);Thread.Sleep(100);Thread.Sleep(1000);的实际效果

问题描述 Thread.Sleep(1);Thread.Sleep(10);Thread.Sleep(100);Thread.Sleep(1000);的实际效果为什么不是暂停1ms.10ms.100ms.1000ms呢?privatevoidbutton_DJQiDong_Click(objectsender,EventArgse){label0.Text=DateTime.Now.ToString()+":"+DateTime.Now.Millisecond.ToString();T

java中thread线程start和run的区别_java

最近看到一个题目,代码如下: 复制代码 代码如下: public static void main(String args[]) {Thread t = new Thread() {public void run() {pong();}}; t.run();System.out.println("ping");}static void pong() {System.out.println("pong");} 问,结果会输出什么? 我运行了很多次,结果都是pong p

Java多线程:“基础篇”03之Thread中start()和run()的区别

概要 Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答.本章内容包括: start() 和 run()的区别说明 start() 和 run()的区别示例 start() 和 run()相关源码(基于 JDK1.7.0_40) 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3479083.html start() 和 run()的区别说明 start() : 它的作用是启动一个新线程,新线程会执行相应的run()