PHP版本中TS版和NTS版如何挑选呢?
Admin 2022-10-18 群英技术资讯 1032 次浏览
在这篇文章中我们来了解一下“PHP版本中TS版和NTS版如何挑选呢?”,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
一、序言
在PHP 开发和生产环境搭建过程中,需要安装PHP语言解析器。官方提供了2种类型的版本, 线程安全 (TS)版和非线程安全(NTS)版,有时后我们 开发环境 和实际生产的环境有所不同,因此也需要选择安装对应的PHP版本。
二、 简介
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 (该方式更适合于 Nginx +PHP 运行)的方式运行。
CGI(Common Gateway Interface):HTTP服务器与客户端机器上的程序进行“交谈”的一种工具,简而言之,cig就是一种 后台语言,可以与服务器进行通讯。此时的php是作为一个独立的程序运行的,特点就是耗费内存。
FAST-CGI是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一个新进程。这种方式 是与语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较 高的性能。
三、选择
通常win下 PHP + Apache 组合,以 ISAPI 的方式运行。
而linux下通常分为2种:
Apache + PHP,PHP一般作为Apache 的模块进行运行;
Nginx + PHP ,以 php的Fast-cgi的方式,即php-fpm的方式运行,该方式对高并发、高负载有良好的性能体现,因此很多网站采用该方式进行环境的搭建。
Nginx 较Apache 的配置要少很多,因此人为出错的概率要少一点,但也因此 Apache 的 稳定性要比Nginx 高。
四、 总结
以 ISAPI 方式运行就用 TS 线程安全版
以 FAST-CGI 或 PHP-FPM 方式运行就用NTS 非线程安全版
通常 Windows 下 Apache + PHP 选TS ,IIS(fast-cgi) + PHP 选TNS
通常Linux 下 Apache + PHP 选TS,Nginx + PHP 选TNS
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
下面由phpstorm教程栏目给大家详解 PHPStorm 配置 FTP,希望对需要的朋友有所帮助!在宝塔Linux面板中添加站点的时候会有选择是否添加FTP选项,选择添加,并且会自动生成对应的用户和密码...
这篇文章给大家分享的是有关使用thinkPHP框架实现无限级栏目排序的内容,下文有具体的实现思路以及代码,对于新手来说有一定的借鉴价值,有需要的朋友可以看一看,接下来就跟随小编一起来了解一下吧。
php查询mysql表名字的方法:首先连接服务器,代码为【die("Connection failed: " . mysql..】;然后选择数据库,代码为【while($row = mysql_fetch_array($result))】。
在PHP5.4以前,我们可以通过APC提供的功能来实现.或者使用PECL扩展uploadprogress来实现.虽然说,它们能很好的解决现在的问题,但是也有很明显的不足:1.他们都需要额外安装(我们并没有打算把APC加入PHP5.4)2.它们都使用本地机制来存储这些信息,APC使用共享内存,而uploadprogress使用文件系统(不考虑NFS),这在多台前端机的时候
PHP如何读取邮箱?这里会使用到POP3,下面是PHP使用POP3读取邮箱接收邮件的示例代码,以及对常用的POP3命令的介绍,感兴趣的朋友就继续往下看吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008