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 相关文章推荐
支持oicq头像的留言簿(二)
Oct 09 PHP
php反弹shell实现代码
Apr 22 PHP
php whois查询API制作方法
Jun 23 PHP
如何在Ubuntu下启动Apache的Rewrite功能
Jul 05 PHP
php多文件上传下载示例分享
Feb 20 PHP
PHP6 中可能会出现的新特性预览
Apr 04 PHP
windows下配置php5.5开发环境及开发扩展
Dec 25 PHP
php实现点击可刷新验证码
Nov 07 PHP
PHP图像裁剪缩略裁切类源码及使用方法
Jan 07 PHP
Windows2003下php5.4安装配置教程(IIS)
Jun 30 PHP
php 解析xml 的四种方法详细介绍
Oct 26 PHP
详谈PHP面向对象中常用的关键字和魔术方法
Feb 04 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设计模式 Facade(外观模式)
2011/06/26 PHP
php通过ajax实现双击table修改内容
2014/04/28 PHP
php中动态变量用法实例
2015/06/10 PHP
php根据数据id自动生成编号的实现方法
2016/10/16 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
2019/02/28 PHP
JavaScript 变量作用域分析
2011/07/04 Javascript
基于jquery的放大镜效果
2012/05/30 Javascript
10个基于浏览器的JavaScript调试工具分享
2013/02/07 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
动态标签 悬停效果 延迟加载示例代码
2013/11/21 Javascript
Bootstrap3 datetimepicker控件使用实例
2016/12/13 Javascript
jQuery Password Validation密码验证
2016/12/30 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
Vue2.0 vue-source jsonp 跨域请求
2017/08/04 Javascript
记一次用vue做的活动页的方法步骤
2019/04/11 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
通过js给网页加上水印背景实例
2019/06/17 Javascript
Vue3配置axios跨域实现过程解析
2020/11/25 Vue.js
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
Python使用Scrapy爬取妹子图
2015/05/28 Python
Python使用type关键字创建类步骤详解
2019/07/23 Python
Python常用库大全及简要说明
2020/01/17 Python
pycharm工具连接mysql数据库失败问题
2020/04/01 Python
python学生管理系统的实现
2020/04/05 Python
Python中有几个关键字
2020/06/04 Python
pyecharts在数据可视化中的应用详解
2020/06/08 Python
英国虚拟主机服务商:eUKhost
2016/08/16 全球购物
农业局学习党的群众路线教育实践活动心得体会
2014/03/07 职场文书
质量承诺书范文
2014/03/27 职场文书
马智宇结婚主持词
2014/04/01 职场文书
超市创业计划书
2014/04/24 职场文书
电气工程及其自动化专业毕业生自荐信
2014/06/21 职场文书
2014国庆节国旗下演讲稿(精选版)
2014/09/26 职场文书
新年晚会主持词开场白
2015/05/28 职场文书