iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php中nts和ts
  • 714
分享到

php中nts和ts

php 2023-09-02 22:09:48 714人浏览 独家记忆
摘要

PHP语言解析器:官方提供了2种类型的版本,线程安全(TS)版和非线程安全(NTS)版 TS: TS(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类

PHP语言解析器:官方提供了2种类型的版本,线程安全(TS)版和非线程安全(NTS)版

TS:

TS(Thread-Safety)即线程安全,多线程访问时,采用了加机制,当一个线程访问该类的某个数据时进行数据加锁保护,其他线程不能同时进行访问该数据,直到该线程读取完毕,其他线程才可访问使用该数据,好处是不会出现数据不一致或者数据污染的情况,但耗费的时间要比 NTS 长。
//—
php以 ISapi 方式(Apache 常用方式)加载的时候选择TS版本。

NTS:

NTS(None-Thread Safe)即非线程安全,不提供数据访问保护,有可能出现多个线程先后或同时操作同一数据的情况,容易造成数据错乱(即脏数据),一般操作的执行时间要比 TS 短。
//----
PHP以FAST-CGI方式加载运行的时候选择TNS版,具有更好的性能;

ISAPI:

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

CGI:

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

FAST CGI:

fast cgi是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一个新进程。这种方式 是与语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较 高的性能。
FAST-CGI 是微软为了解决 CGI 解释器的不足而提出改进方案。当一个请求向 WEB server 发送请求时,web server总会fork一个CGI解释器进程进行处理这个请求,进程处理完成之后将结果返回给web server,web server将结果返回并显示出来,进程结束,当用户再次请求同一个页面时,web server又会fork一个新进程进行请求处理,这样效率会比较低下(CGI被人诟病的主要原因)。而采用FAST-CGI 解释器的 话,当一个请求执行完毕后不会注销该进程,而是将改进程进入休眠期,当接收到新的请求时,重新启用改进程进行处理。FAST-CGI 较CGI 减少了进程的重复创建的资源占用。

进程与线程:一个进程至少存在一个或多个线程。

通常win下 PHP + Apache 组合,以 ISAPI 的方式运行。

而linux下通常分为2种:

Apache + PHP,PHP一般作为Apache 的模块进行运行;

Nginx + PHP ,以 phpfast 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

来源地址:https://blog.csdn.net/hgb24660/article/details/132238228

--结束END--

本文标题: php中nts和ts

本文链接: https://www.lsjlt.com/news/391485.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作