浅谈php的TS和NTS的区别


Posted in PHP onMarch 13, 2019

ts(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染php以ISAPI方式加载的时候选择这个版本.,php以ISAPI方式加载的时候选择这个版本.

nts(None-Thread Safe)即非线程安全,就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的是 脏数据php以fast cgi方式运行的时候选择这个版本,具有更好的性能;

ISAPI(Internet Server Application Programming Interface), 通常是指被http服务器所加载,以服务器的模块形式运行,由微 软提出,故只能在win平台上运行,例如win下的apache,iis[据说用fast cgi 方式工作更稳定],而linux上php 则以 Apache模块或者php-fpm的方式运行。

cgi(Common Gateway Interface):HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,说白了,cig就是一种 后台语言,其可以和服务器之间进行通讯。此时的php是作为一个独立的程序运行的。特点就是耗费内存。

fast cgi.是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork.这种方式 是与语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较 高的性能。

ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本。
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择NonThread Safe版本。
通过phpinfo(); 查看其中的 Thread Safety 项,这个项目就是查看是否是线程安全,如果是:enabled,一般来说应该是ts版,否则是nts版。

以上所述是小编给大家php的TS和NTS的区别,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php读取30天之内的根据算法排序的代码
Apr 06 PHP
php面向对象的方法重载两种版本比较
Sep 08 PHP
php自动注册登录验证机制实现代码
Dec 20 PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 PHP
PHP伪静态Rewrite设置之APACHE篇
Jul 30 PHP
微信公众平台开发关注及取消关注事件的方法
Dec 23 PHP
PHP导出Excel实例讲解
Jan 24 PHP
在Mac OS上搭建PHP的Yii框架及相关测试环境
Feb 14 PHP
yii2带搜索功能的下拉框实例详解
May 12 PHP
php自定义时间转换函数示例
Dec 07 PHP
php实现构建排除当前元素的乘积数组方法
Oct 06 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
Apr 09 PHP
浅谈PHP各环境下的伪静态配置
Mar 13 #PHP
Laravel框架实现的使用smtp发送邮件功能示例
Mar 12 #PHP
Laravel事件监听器用法实例分析
Mar 12 #PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
Mar 12 #PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 #PHP
PHP实现的杨辉三角求解算法分析
Mar 11 #PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
Mar 11 #PHP
You might like
Thinkphp单字母函数使用指南
2016/05/08 PHP
完美利用Yii2微信后台开发的系列总结
2016/07/18 PHP
PHP PDOStatement::bindParam讲解
2019/01/30 PHP
javascript 继承实现方法
2009/08/26 Javascript
经典海量jQuery插件 大家可以收藏一下
2010/02/07 Javascript
jquery.form.js用法之清空form的方法
2014/03/07 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
JS实现自动切换文字的导航效果代码
2015/08/27 Javascript
JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】
2016/08/19 Javascript
AngularJS中$http的交互问题
2017/03/29 Javascript
通过vue提供的keep-alive减少对服务器的请求次数
2018/04/01 Javascript
微信小程序购物车、父子组件传值及calc的注意事项总结
2018/11/14 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
2019/03/04 Javascript
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
[01:10]DOTA2英雄背景故事第四期之混沌法则混沌骑士
2020/07/16 DOTA
python生成随机密码或随机字符串的方法
2015/07/03 Python
python检测IP地址变化并触发事件
2018/12/26 Python
Python函数返回不定数量的值方法
2019/01/22 Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
2019/03/05 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
2019/05/15 Python
python实现opencv+scoket网络实时图传
2020/03/20 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
俄罗斯皮肤健康中心:Pharmacosmetica.ru
2020/02/22 全球购物
怎样创建、运行java程序
2014/08/01 面试题
管理信息系学生的自我评价
2014/01/11 职场文书
优秀高中生事迹材料
2014/02/11 职场文书
《守株待兔》教学反思
2014/03/01 职场文书
保护环境建议书100字
2014/05/13 职场文书
导师工作推荐信范文
2014/05/17 职场文书
社区先进事迹材料
2014/05/19 职场文书
汉字听写大会观后感
2015/06/12 职场文书
放假通知怎么写
2015/08/18 职场文书
一篇文章弄懂Python中的内建函数
2021/08/07 Python