笔记:eacc缓存性能备忘

5 Nov 2007 In: PHP

今天抽空测试了eacc缓存的读写删性能,顺带有md5函数的性能(kolidon用md5来生成eacc的键)。

read begin:0.43779400  14

write begin:0.44807900  16

delete begin:0.66264800  58

md5 begin:0.02717100  60

md5 complete:0.04641200  60

10000times, 2.011s, get   0.20ms

10000times,  42s, write  4.2ms

10000times, 1.362s, rm   0.14ms

10000times, 0.019s, md5   ?结果存疑 0.0019ms

写比读耗时在意料之中,但相差实在过大。
读和清空差相仿佛。
md5的测试结果让人怀疑,因普通php函数耗时都可能长于此,有待以再次验证(随机生成数10000个,md5,需考虑变量/数组元素存取时间)。

前一阵发现php5.2.4在IIS平台fastcgi模式下php_self的bug,晚上花了些时间将服务器上的php版本换成了5.2.5rc2,问题解决。

未找到eAccelerator0.9.5.2 for php5.2.5rc2的dll,自己动手编译了一个。分享之。
http://test.treeber.net/eaccelerator.dll

joomla的效率仍然在130ms量级,响应速度上,感觉比80ms量级的supesite慢了很多,比缓存和语句执行流程设计无比精细的discuz慢了更多。
看来仍然只能在静态化上下功夫了。
jre组件很不错,需要解决的是在固定场景(内容及其他各组件、甚至论坛会页面内容随时变化)下的缓存自动更新和用户交互部分(目前有:评论、digg、访问次数、搜索引擎来源等)的即时更新问题(老思路为js调用)。

服务器维护日志20071002

2 Oct 2007 In: DEVELOPER'S TOOLS

服务器跑IIS+php5,以isapi模式,PHP应用时常变慢。
最近下定决心,在本地测试了fastcgi for iis6,压力测试效果不错——虽然从程序响应时间来看似乎没有提升。

装上,果然天下太平。

不足的是,应用程序池在内存和CPU限制上似乎不太好办——限制CPU后即报错。

只能从fastcgi配置和php配置中单个页面执行时间上想办法。

[技术] 解决了一个头痛一年的服务器问题[补]

fastcgi for IIS6初体验

1 Oct 2007 In: DEVELOPER'S TOOLS

IIS上的PHP能不能像.NET一样稳定?
——微软 9月24日发布 FastCGI for IIS GO LIVE!

运行在windows server2003 服务器上的IIS6 + php5.2.x + EACC ,时时崩溃,这让我每天寝食难安。每次有小网站客户打电话问为什么网站奇慢,我都只能低声下气说:您稍等,一分钟解决——于是重启IIS,于是 等待下一个随时可能打进来的电话。

最初是网络不稳定,现在网络稳定了,这个问题却愈发显得严重起来。
试了无数种手段,翻遍无数的文档,小牛们异口同声:NO WINDOWS, NO IIS!
屎!

我受微软,我爱WINDOWS!
支持.NET,方便编写、兼容主流,这是王道,是我必不可少的鱼。
但想想,极端完美的discuz论坛系统,极端方便的joomla内容管理系统!却都是基于PHP语言的,这是我所爱的熊掌!
我的大量小破网站,也都是用这个joomla快速捏造出来的。

但现实如此:要指望鱼和熊掌兼得,往往是蛮为难的。

微软早先宣布与Zend合作以加强PHP在WINDOWS平台上的应用:Microsoft and Zend Technologies Announce Technical Collaboration,然后,IIS产品团队下定决心解决PHP在IIS上的稳定性和效能问题,他们成功了,FastCGI for IIS很伟大!

预计这个组件的寿命将在windows server2008 IIS7中得以延续,因此,决定有时间来翻译这个文档:http://www.iis.net/articles/view.aspx/IIS7/Hosting-Web-Applications/PHP/Using-FastCGI-to-Host-PHP-Applications-on-IIS-6-0-
另外,推进WINDOWS平台上如DNN一样的开源应用,也实在是一件更重要的事情。

1:44 补记:看来fastcgi在php5.2.4 for win下还有一个小问题,是路径问题,比如$_SERVER["PHP_SELF"]会获得文件名两次。这不好。
查资料,果然有老兄遇到了和我一样的问题,$_SERVER['PHP_SELF'] 在FastCGI 下不正常,PHPWIND因此也不正常PHPWind ...。但这兄弟显然还没意识到是因为PHP的这个版本有点小毛病。先不研究了,暂时用别的办法替换。左右我不装PHPWIND这玩艺儿。:-)
3:50 补记:事实是,有几个基本的脚本路径变量都和正常有些差别——只能理解为我的php.ini没有配置好。貌似有些哥们儿已经做过这样的对照表了。没兴趣。
14:38补记:Dedian说,在稍稍平静的生活表面,人还是愿意为他人做些什么。这正是开源运动的根本精神。

http://en.wikipedia.org/wiki/World_Wide_Web
http://zh.wikipedia.org/wiki/%E4%B8%87%E7%BB%B4%E7%BD%91

研究就是分类,如何从不同角度清晰合理地描述,这个,看来还得先请我的老师们指定。

baken_cms,原始代码几经磨难,最初的版本和当前的版本之间,有三大风格转变。
1. 纯子文件模块化调用,开发在线文件编辑功能以拼合页面,此版本典型应用在http://www.jingzhui.com;
2. 纯函数式调用及模板化雏形,对常用功能分解为文章、分类、留言、评论、图片、专题等数块,每块有专用函数及参数配置,此版本典型应用在http://www.gupen.com和http://www.zhendao.net;
3. 纯模板化及多用户,侧重编辑流程管理,侧重专业技术人员可操作性。触发生成静态页面并加强统计功能,后台任务系统,此版本曾在http://www.chsa.cn承载了十余万资讯页面量级,惜最后关站。

俱往矣,当下我爱joomla还有dnn。

贴上一段在当时算是创新的代码(asp中的数据库集中操作函数) Read the rest of this entry »

About this blog

致谢:
本博客近日收到第一笔捐赠 200元 人民币。
一旦捐赠人愿意公开昵称或姓名,将开设专门页面记录。


关注WEB应用系统架构,侧重效能、可用性研究。欢迎访问treeber.com查看本站整理自网络的非原创精华(筹建中)。