php5 NTS和TS版本的区别,所谓的线程安全和非安全
先从字面意思上理解:
None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;
Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源。
再来看PHP的两种执行方式:
ISAPI和FastCGI。
FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二进位档有两种包装方式:msi 、zip ,请下载 zip 套件)。
而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。
PHP的优缺点是什么
本人做程序较长时间了,下面是一些个人的观点,不喜勿喷: 优点和缺点:
1:学习简单,做为一种脚本语言,学习简单是必须的!同样的,作为一种脚本语言,效率问题,永远是痛点,特别是复杂的运算
2:语法较随意,同样的,语法的随意性,使得在阅读没有注释的代码时,无法很清楚的明白到底是什么意思,比如Java,变量的类型是固定的,而php则前面可以是string,后面直接成array都没关系
3:php本身不支持多线程(swoole除外)
4:php没有直接操作内存的函数(至少本人不知道,6还没研究,不知道有没)
5:作为一种弱语言,php也算很好了,比之perl等也不错
6: php可以说应用范围很狭窄(个人理解,除了网页之外,好像没什么其他用途了,如果内嵌在游戏中那么python是不错的选择,cli也能凑合,),当然,我把php做的server-api这种模式也理解为是网页! 据说php6出来之后效率会提高很多,用了比较好的内存分配算法,但目前出来的是alpha版本,有很大的不稳定性 以上是个人见解,不喜勿喷!谢绝私信骂人!谢谢
php有点是移植性好,在windows、linux都可以使用,专门用于开发网站的。缺点嘛就是太多配置的地方,不同的程序可能需要单独配置下php.ini,这样一台服务器放很多站点就可能存在不兼容。
.net可以用于做网站,也可以做软件,仅支持windows,优点是有很多模块,开发速度很快,缺点就是和系统过度集成,安全性不是很好。