PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析


Posted in PHP onMarch 28, 2011

一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe,这让我这个菜鸟头疼啊,还好 PHP 官网提供下载的地方左边有个英文 choose 我看懂了,我估摸着就是如何来选择版本的意思吧,于是开始查字典及上网查找,终于看明白了具体意思,拿来做个备忘先。

一、如何选择 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 是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源。Non Thread Safe 是非线程安全,在执行时不进行线程(Thread)安全检查。

再来看 PHP 的两种执行方式:ISAPI 和 FastCGI。

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

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

再来看PHP的两种执行方式:ISAPI和FastCGI。

FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二进位档有两种包装方式:msi 、zip ,请下载 zip 套件)。

而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。

所以,对于PHP5.2选择Thread Safe版本安装,而对于PHP5.3则下载None-Thread Safe,执行PHP比较有效率。

另外,PHP还有VC6,VC9版本之分。

VC6 版本是使用 Visual Studio 6 编译器编译的,如果你的 PHP 是用 Apache 来架设的,那你就选择 VC6 版本。

VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你的 PHP 是用 IIS 来架设的,那你就选择 VC9 版本。

PHP 相关文章推荐
透析PHP的配置文件php.ini
Oct 09 PHP
php中ob(Output Buffer 输出缓冲)函数使用方法
Jul 21 PHP
PHP 数据库树的遍历方法
Feb 06 PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 PHP
解析如何用php screw加密php源代码
Jun 20 PHP
如何阻止网站被恶意反向代理访问(防网站镜像)
Mar 18 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
Jun 09 PHP
PHP清除数组中所有字符串两端空格的方法
Oct 20 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
Zend Framework教程之MVC框架的Controller用法分析
Mar 07 PHP
PHP架构及原理知识点详解
Dec 22 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
Aug 17 PHP
php中关于普通表单多文件上传的处理方法
Mar 25 #PHP
PHP删除特定数组内容并且重建数组索引的方法.
Mar 25 #PHP
PHP学习 变量使用总结
Mar 24 #PHP
优化php效率,提高php性能的一些方法
Mar 24 #PHP
php 代码优化之经典示例
Mar 24 #PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
Mar 24 #PHP
php邮件发送,php发送邮件的类
Mar 24 #PHP
You might like
PHP的autoload机制的实现解析
2012/09/15 PHP
Thinkphp 3.2框架使用Redis的方法详解
2019/10/24 PHP
让JavaScript拥有类似Lambda表达式编程能力的方法
2010/09/12 Javascript
jQuery(js)获取文字宽度(显示长度)示例代码
2013/12/31 Javascript
javascript中call和apply的用法示例分析
2015/04/02 Javascript
jQuery实现图片向左向右切换效果的简单实例
2016/05/18 Javascript
jQuery针对input的class属性写了多个值情况下的选择方法
2016/06/03 Javascript
JS 数字转换为大写金额的简单实例
2016/08/04 Javascript
移动端点击图片放大特效PhotoSwipe.js插件实现
2016/08/25 Javascript
Javascript 6里的4个新语法
2016/08/25 Javascript
JS使用面向对象技术实现的tab选项卡效果示例
2017/02/28 Javascript
JavaScript数据类型的存储方法详解
2017/08/25 Javascript
在Vue组件上动态添加和删除属性方法
2018/02/23 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)
2020/02/11 Javascript
Element Tooltip 文字提示的使用示例
2020/07/26 Javascript
react的hooks的用法详解
2020/10/12 Javascript
JavaScript实现点击切换功能
2021/01/27 Javascript
[03:28]2014DOTA2国际邀请赛 EG战队官方纪录片
2014/07/21 DOTA
Python简单调用MySQL存储过程并获得返回值的方法
2015/07/20 Python
python自定义异常实例详解
2017/07/11 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
2019/05/10 Python
关于python字符串方法分类详解
2019/08/20 Python
python加载自定义词典实例
2019/12/06 Python
DataFrame.groupby()所见的各种用法详解
2020/06/14 Python
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
英国男士时尚网站:Dandy Fellow
2018/02/09 全球购物
古驰英国官网:GUCCI英国
2020/03/07 全球购物
Shopbop中文官网:美国亚马逊旗下时尚购物网站
2020/12/15 全球购物
财务会计专业毕业生自荐信
2013/10/19 职场文书
大学生活学习的自我评价
2013/12/03 职场文书
《那片绿绿的爬山虎》教学反思
2014/02/27 职场文书
2014年护士工作总结范文
2014/11/11 职场文书
5.12护士节活动总结
2015/02/10 职场文书
《检阅》教学反思
2016/02/22 职场文书