BBS水木清华站∶精华区

发信人: watery (云之风~~水云间), 信区: Java        
标  题: Re: CGI, mod_perl, PHP, JSP性能实测比较[转] (转载) 
发信站: BBS 水木清华站 (Sun May  7 13:13:09 2000) 
 
【 在 midi (迷笛) 的大作中提到: 】 
 PHP也好,PERL也好,可tune的地方不多。Java Servlet就不同了。不同 
 的虚拟机,JIT编译器,Natvie/Green Thread的多线程实现,以及你给 
 Application Server的堆大小,都影响性能。 
 另外,对于基本上是静态的页面的测试没有什么意思。PHP也好,CGI也好, 
 MOD-PERL也好,都是Apache内在的东西,或者是CGI进程,或者是module, 
 都属于Apache本身。JServ是个独立的运行平台,只是通过AJP协议和Apache 
 连接。因此Apache可以cache PHP或者mod-perl,但cache不了servlet。 
 因此速度的快慢,对于JSP/Servlet来说,与其说是Apache的快慢,不如说 
 是Application的快慢。 
 正因为如此,如果对于大典的系统来说,用诸如round robin方式能很容易分布 
 Application Servers。 
 另外,JAVA还有一些很重要的地方能大幅度提高性能。比如说数据库的connect 
 pool。据说PHP4可以支持了,但我不知道。至少PHP3是没有的。一个静态页面 
 可能最多化20毫秒,但一次数据库连接得花多少时间? 
 我在两年前就做过类似的比较,而且比原作者做得好得多,因为除了静态的 
 页面外,我还有循环计算的page,以及数据库查询的页面。我记得当时曾经 
 贴到SMTH上来,但现在找不到了。记得结果大致是,mod-perl>servlet>php> 
 cgi/perl.当时还不知道connect pool,否则Servlet的测试程序可能能更优化些。 
 
不错,在servlet中,在init方法中连上Database,在drop方法中断掉Database的连接, 
在service方法中用,性能极好,因为其数据库是始终保持连接的. 
这绝对是perl,cgi, 
php无法比的. 
 
不知maht,midi兄对servlet的测试中是用的什么结构.呵呵. 
 
-- 
※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.11.173] 

BBS水木清华站∶精华区