登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> 程序员学前班[不再更新,只读] >> 主题: php-cgi.exe 居然是顺序单个执行的     [回主站]     [分站链接]
标题
php-cgi.exe 居然是顺序单个执行的
clq
浏览(0) + 2010-05-13 10:12:59 发表 编辑

关键字:

php-cgi.exe 居然是顺序单个执行的

如果你只开了一个,用 telnet 去连接,然后再执行你的 fastcgi 接口,你会发现它死在哪里了! 直到你杀掉那个 telnet 连接为止! 这也太XXX了. 不过据说这样就可以用非线程安全版本的 php 了,能加快执行速度.  不过我测试了一下这个 telnet 如果不手工杀掉它会一直存在! 这也太夸张了嘛,起码应该设定一个超时嘛. php-cgi.exe 显然是用了端口重用,这时候你再打开一个 php-cgi.exe 它就会执行了,一般来说有 7-10 个就性能非常好了,我在大规模的网站上用的是 7 个,性能是很不错的.

clq
2010-5-13 10:14:08 发表 编辑

网友如是说:

"

线程安全与非线程安全 的区别
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍。

从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用 多进程的工作方式不同的是Windows系统是采用多线程的工作方式。如果在IIS下以CGI方式运行PHP会非常慢,这是由于CGI模式是建立在多进程 的基础之上的,而非多线程。一般我们会把PHP配置成以ISAPI的方式来运行,ISAPI是多线程的方式,这样就快多了。但存在一个问题,很多常用的 PHP扩展是以Linux/Unix的多进程思想来开发的,这些扩展在ISAPI的方式运行时就会出错搞垮IIS。因此在IIS下CGI模式才是 PHP运行的最安全方式,但CGI模式对于每个HTTP请求都需要重新加载和卸载整个PHP环境,其消耗是巨大的。

为了兼顾IIS下PHP的效率和安全,微软给出了FastCGI的解决方案。FastCGI可以让PHP的进程重复利用而不是每一个新的请求就重开 一个进程。同时FastCGI也可以允许几个进程同时执行。这样既解决了CGI进程模式消耗太大的问题,又利用上了CGI进程模式不存在线程安全问题的优 势。

因此,如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本;而用FastCGI模式运行 PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率。


"


总数:1 页次:1/1 首页 尾页  
总数:1 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1