这篇文章将为大家详细讲解有关TS与nt在php中的区别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
<代码> TS(线程安全)代码>即线程安全、多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染php以ISAPI方式加载的时候选择这个版本,php以ISAPI方式加载的时候选择这个版本。
<代码> nt (None-Thread安全)代码>即非线程安全,就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的是脏数据php以快速cgi方式运行的时候选择这个版本,具有更好的性能,
<代码> ISAPI> 代码(网络服务器应用程序编程接口),通常是指被http服务器所加载,以服务器的模块形式运行,由微软提出,故只能在赢平台上运行,例如赢下的apache, iis(据说用快速cgi方式工作更稳定),而linux上php则以apache模块或者php-fpm的方式运行。
<代码> cgi> 代码(公共网关接口):http服务器与你的或其它机器上的程序进行”交谈”的一种工具,说白了,是到岸价就是一种后台语言,其可以和服务器之间进行通讯。此时的php是作为一个独立的程序运行的特。点就是耗费内存。
<代码>快速cgi。代码>是一个常驻(万岁)型的cgi,它可以一直执行着,只要激活后,不会每次都要花费时间去叉。这种方式是与语言无关的,可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本。
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择NonThread安全版本。
通过phpinfo ();查看其中的线程安全项,这个项目就是查看是否是线程安全,如果是:启用,一般来说应该是ts版,否则是nt版。
关于ts与nt在php中的区别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。