php线程安全(TS)和非线程(NTS)安全区别

栏目: PHP · 发布时间: 8年前

内容简介:php线程安全(TS)和非线程(NTS)安全区别

以下线程安全简称TS

非线程安全简称NTS

首先unix/linux不强调使用线程模型,强调使用多进程模型,windows下面才强调使用多线程。创建进程的速度比创建线程慢几倍,并且相互通信比线程慢很多,毕竟人家线程是资源共享嘛,并且进程通信相对麻烦,至于为什么 linux 还强调使用多进程模型呢?首先看下多线程和多进程的优缺点

多进程优点:资源独立,不会相互影响,各种不同的代码水平的程序不会相互影响

多线程优点:资源共享,创建线程速度快,相互通信快

个人认为使用多进程是因为资源独立,奔溃不受影响,这也是linux稳定的原因之一吧!具体是什么原因这里不讨论了如果您知道请在评论中写上。

早期的window上面使用iis+php是使用CGI方式的,就是需要不停创建进程,而在windows中创建进程的消耗是比较大的。所以windows推出了isapi多线程运行才能保证效率,可是上面提到了多线程和多进程的优缺点,php很多扩展是在采用linux下推荐的多进程模型,这些扩展在windows下面运行可能会造成iis的奔溃,这对于高可用来说是不能忍受的。所以就有了线程安全版本,不会弄垮iis服务器。

但是我想保证效率的同时也要保证iis的安全怎么办呢?这是要就有人提出fastcgi概念,就是将cgj解释进程保存在内存中,接受fastcgi进程管理器的调度,然后复用的过程,

总结:如果您在windows中使用isapi运行 php 就要使用ts版本,如果使用了cgi或者fastcgi使用nts,保证了效率的同时也保证了安全,当然由于linux推荐使用多进程直接使用nts版本即可。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出HTML5编程

深入浅出HTML5编程

弗里曼 (Eric Friiman)、罗布森 (Elisabdth Robson) / 东南大学出版社 / 2012-4 / 98.00元

《深入浅出HTML5编程(影印版)(英文)》就是你的特快车票,它可以带你学习如何使用今天的标准同时也会是明日的最佳实践来搭建Web应用。同时,你会了解HTML5的新API的基本知识,甚至你还会弄明白这些API是如何与你的网页进行交互,JaVaScript如何为它们提供动力,以及你如何使用它们来搭建能够打动你的老板并且吸引你的朋友的Web应用。一起来看看 《深入浅出HTML5编程》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具