国内主流PHP语言的CMS数据负载测评报告 织梦、帝国竟排倒数

2011-07-30 18:08
当今时代网络已经进入家庭,很多网民已经不满足于QQ以及一些blog的个性展现而走向了网站建设的站长之路,一些个人网站的崛起也让他们看到了成功的曙光,与此同时,各类网站管理系统(以下简称cms)也犹如雨后春笋般地出现在了大家的眼前,给很多有站长梦的朋友建设网站带来了曙光。
  但问题也随之而来,那就是:站长们应该如何选择cms,选择的cms系统是否能够完全满足自己的需要,cms是否能够稳定而持久的方便站长的工作?是否能够满足网站在将来发展的需要?带着同样的疑问,助易网测评小组决定对现在比较流行的PHP平台下的国内主流cms系统作一次深入的评测,参评的国内php类cms包含了当下主流的dedecms、ecms、php168、phpcms、supesite等系统,测评的具体内容则包括cms的服务、质量、功能、数据负载等多个方面,测评小组期望通过测评给广大站长选择适合自己的cms程序提供依据。
  本报告的内容为cms的数据负载专项评测结果,目的是在数据负载方面为选择cms系统提供依据。
  一、评测对象
  经过筛选,最终确定参与本次评测的php类cms如下表:
   


  备注:测评小组原本想将cmsware(思维CMS)列入评测范围,但因cmsware始终未能找到好的方法录入50万的数据,因时间所限,所以本次cmsware不参加评比的最终排名,只给出部分功能的介绍。
  二、评测环境
  为保证公平公正,本次测评我们把全部的cms都统一安装在同一台电脑相同环境中,利用端口区分每个cms,具体的测试环境为:
  1、硬件环境
  CPU:Intel(R) Core(TM)2 Duo 英特尔酷睿2双核
  主频:1.80GHz
  物理内存:1GB
  硬盘:120GB
  2、软件环境
  操作系统:Windows Server 2003 Standard Edition Service Pack 2
  Web服务器:Apache HTTP Server 2.2.6
  PHP:5.2.5
  MYSQL:MySQL Server 5.0
  ZEND:ZendOptimizer-3.3.0
  三、评测方法
  本次数据负载评测的方法是向每个cms系统中录入50万条数据,并在此基础上完成三个项目的评测内容,具体的评测方法为:
  1、数据获得方法
  评测小组试图使用采集的方法获得50万的数据,但由于采集的效率较低,并且数据来源各有差异,不利于做出相对公平的测试结果,因此最后决定使用循环入库的方法直接创造50万的数据。为保证数据入库的有效性,我们使用程序自身的数据入库模块并编写了对应的接口程序,在其基础上建立循环,用最快速的方法直接写入数据库创造数据。
  2、数据样本
  为保证公平公正,本次测试使用完全一样的数据样本,该样本为一篇普通的新浪的文字稿件,共370个字符,不包含图片、视频、附件等任何其他多余信息,具体样本如下:
  标题: 火箭22连胜登上西部榜首 麦蒂哑火街球王枪挑湖人
  内容: 新浪体育讯 北京时间3月17日凌晨,火箭在主场以104-92击败湖人,完成了22连胜的伟业,同时也登上了西部第一的宝座。
  火箭(46-20)将NBA第二长的连胜延长到22场,同时独享西部第一的位置,将湖人甩开了一场。特雷西-麦克格雷迪上半场一分未得,最后16投仅4中,得11分。拉夫-阿尔斯通挺身而出,他三分球11投8中,砍下了31分并助攻5次。替补出场的鲍比-杰克逊9投7中,也拿下19分。肖恩-巴蒂尔14分,路易斯-斯科拉13分。点此祝贺火箭豪取22连胜>>>
  湖人(45-21)遭到2连败。科比也表现平平,他33投仅11中,得24分7个篮板,拉马尔-奥多姆17分11个篮板,罗尼-图里亚夫13分8个篮板。
  火箭连战连捷,连老天都帮他们,在连胜的过程中,打黄蜂时对手少了大卫-韦斯特,打小牛时德克-诺维茨基被禁赛,而今天面对湖人,加索尔又在上一场扭伤脚踝。不过火箭可不会同情对手,再说他们的主将姚明已经缺阵了两个星期。
  3、数据量及空间占用情况
  由于每个cms的数据录入方法稍有不同,最终cms具体的数据量略有差异,测评小组认为,相比50万的总体数据量来说,这部分微小的数量差异不会对测试的最终结果产生太大的改变和造成决定性的影响。
  每个cms具体录入的数据量以及数据空间占用情况见下表:
   


  4、评测内容
  本次评测的具体内容为(每个大项10分为满分):
  (1)大数据量情况下后台的管理效率,本项目重点考察在大量数据的基础上,cms对数据进行列表、增加、删除、修改、查询和移动等常见管理操作的效率和速度,得分占总成绩的50%。
  (2)大数据量情况下的页面生成效率,本项目重点考察cms系统静态页面、列表页面等网页的生成效率和速度,考察管理后台提供了哪些方便网页生成的维护和管理工具,得分占总成绩的40%。
  (3)大数据量情况下网页的可访问性,本项目重点考察动态数据页面的情况下,各个cms系统的前台页面表现的负载能力和访问效率,得分占总成绩的10%。
  四、分类评测结果
  1、后台数据管理能力测试
  (1)dedecms
   

  DeDecms——50万数据管理后台
  评分:4分
  测评之前就听说dedecms的数据负载不是很理想,没想到测试结果比想象的还要糟糕。当后台管理到达5万数据的时候,后台操作开始变得异常困难,打开栏目列出所有文章要花费相当长的时间,当数据到达20万的时候,打开文章管理列表时提示php超时。
  我们录入完50万数据,并且延长了php脚本超时的限制,小心翼翼的打开了栏目的文章管理,在硬盘灯一阵狂闪,时间过去了整整2分35秒的之后,终于艰难的打开了文章管理列表。不幸的是每次翻页都会遇到类似的情况,时间都在40秒以上。随后我们耐心尝试了文章的添加、编辑、删除、移动和查询等操作,其中文章的添加、编辑、删除、查询的速度中规中矩,而批量文章移动速度较慢。
  结论:当数据大于5万的时候,使用dedecms的后台来管理数据是非常让人郁闷的一件事情,因为每次操作完毕后,你不得不花费至少1分钟的时间等待文章列表的出现,这对于没有耐心的人几乎是不可能完成的任务。
  (2)php168
   

  Php168——50万数据管理后台
  评分:8分
  Php168的后台布局有点动易系统的影子,对于5万和10万的数据量,后台管理都显得轻松自如,因此我们没有做更多的测试,直接录入50万数据。
  Php168在50万数据时管理同样显得比较轻松,50万数据文章管理列表第一次打开仅花费了13秒,每次翻页也都是2-3秒就能出现,速度比较理想。接着我们测试了文章的添加、编辑、删除、移动和查询等各种操作,速度都非常快,几乎没有任何延迟,操作起来也非常顺手。
  结论:对于50万的数据来说,php168的后台应对起来非常轻松自如,各种操作均速度较快。
  (3)phpcms
   

  phpcms——50万数据管理后台
  评分:8分
  Phpcms后台的管理界面相对比较复杂,但层次清晰,有点类似DZ后台的管理方法,让人感觉比较亲近。对付5万和10万数据,后台管理比较轻松,几乎未见延迟。
  Phpcms单个栏目50万数据打开管理列表第一次花费时间为11秒,数据翻页的时间为1-2秒,和php168旗鼓相当,效率亦非常的高。继续测试了文章的添加、编辑、删除、移动和查询等各种操作,速度很快,管理操作都非常方便。
  结论:phpcms优秀的数据管理机制能轻松应对较大数据量,后台各种数据管理工具和操作都很顺手。
  (4)ecms帝国
   


  ecms帝国——50万数据管理后台
  评分:6.5分
  Ecms的后台管理布局比较传统,类似风讯等系统后台管理方式。在5-10万数据时,后台管理相对速度较为缓慢,但还能够使用。
  单个栏目50万数据时,系统管理显得较为吃力,打开数据列表时间花费为1分20秒,每次翻页用时10-14秒,这个成绩仅略优于dedecms,不过当再次打开数据列表时,速度有明显的提升。继续测试了文章的添加、编辑、删除、移动和查询等各种操作,文章的添加、编辑、删除、查询的速度可以接受,而数据移动则异常的缓慢,这点和dedecms表现相同。
  结论:帝国cms数据的承载能力并不强,在大数量的面前,表现只能算及格,建议其单个栏目的数据量最好不超过15万。
  (5)HBCMS
   


  HBCMS——50万数据管理后台
  评分:7.5分
  HBCMS的后台管理有明显的仿欧美cms的倾向,但是布局较为凌乱,感觉并不舒服。后台管理在数据量为5-10万的情况下表现优异。
  出人意料的是,HBCMS单栏目50万数据管理的打开速度达到了令人惊异的6秒!翻页也只需要2-3秒,这让测评小组对其刮目相看。测试文章的添加、编辑、删除、移动和查询等各种操作,速度都较为出色,但是由于后台布局不规整,而且后台在使用上经常出现一些莫名其妙的错误,让人摸不着头脑。
  结论:HBCMS在处理大数据方面有着令人称赞的高效机制,但是后台管理夹杂着英文提示以及一些未知的错误,往往会让用户不知所措,数据添加、编辑、移动等操作使用起来提示较多,操作繁琐,最终影响了得分。
  (6)supesite
   

  supesite——50万数据管理后台
  评分:9.5分
  Supesite不愧为大公司的作品,后台管理界面交代非常清楚,各类功能一目了然。后台管理在数据量为5-10万的情况下表现优异。
  Supesite后台数据管理的效率相当惊人,50万的栏目数据列表只花费了不到5秒的时间,数据翻页,文章的增、删、改、查和批量移动,这些功能操作起来几乎感觉不到大数据量带来的迟滞,后台所有功能都非常符合中国人的喜好,使用起来方便、舒服、顺手。
  结论:supesite表现出来的优异性能在测评小组的预料之中,因此毫不犹豫的给了高分,测评小组一位成员甚至在2亿的数据基础之上测试过supesite的性能,结果依然让人满意,唯一遗憾的地方是supesite不是一套开源的系统,因此我们虽然十分赞叹其性能,但依然保留了一点自己的看法,希望其在未来能完全开源供站长们使用和研究。
  (7)verycms
   

  verycms——50万数据管理后台
  评分:8.5分
  phpwind公司进军cms领域的作品,verycms的功能较为单一,因此后台管理更加简单,清爽。
  由于verycms的只提供文章管理功能,因此其管理的效率是令人满意的,50万数据列表打开的速度约为6秒,仅次于supesite,并且由于系统使用了ajax技术,让人感觉不到等待的时间。数据翻页的效率为2-3秒,让人满意,对于文章数据的增加、删除、修改、查询和批量移动,其表现也同样比较出色。
  结论:verycms只有文章管理的单一功能,其表现堪称优秀,但由于其功能较为单一,实在是非常遗憾,我们期待有更多的功能加入这个优秀的开源系统中。
  小结
   


   2、页面发布效率测试
  (1)dedecms
   


  Dedecms针对页面生成提供了丰富的选项 
  页面生成进度提示
   

  50万数据时,生成100页的完成时间
  无法忍受的生成速度
  评分:6.5分
  Dedecms提供的页面生成管理功能是令人称道的,分别提供了主页、栏目页、文章页的生成功能,甚至包括网站地图、RSS、专题以及自定义文档列表等生成功能,除此外,还有许多cms系统中不常见的一键更新和计划任务的功能。在具体的文档生成方面,提供按照指定时间,指定文档编号,指定生成页数等多种页面生成的方法,总体感觉比较实用和方便。同时页面生成时有较为精确的进度提示,增强了用户使用体验。
  和生成管理形成强烈反差的是数据生成的低效率,由于没有提供指定范围的列表页面生成功能,测试小组试图完成所有列表页面的生成,由于时间太长结果以失败告终。接下来对文章的生成,同样是一场噩梦,指定ID生成100篇文章花费时间为6分55秒,不指定文章ID生成300篇文章用时17分10秒,按照这个速度对50万的数据进行生成,花费的时间实在是非常可观。
  结论:dedecms的后台数据生成和管理方面充分为用户着想,提供诸多的功能,但是过低的页面生成效率让dedecms只能应对数据量生成非常小的站。由于其管理功能丰富,虽然有点花拳绣腿的嫌疑,但测评小组依然给了一个勉强及格的分数。
  (2)php168
   


  Php168静态页面生成界面
  评分:7.5分
  Php168的静态页面生成管理较为简单,仅提供了首页、列表页和内容页等常见的生成功能,文章生成允许指定时间和ID,列表页不能指定生成数量,但系统提供了一个较为贴心的功能,即允许用户在中断生成操作之后,继续未完成的任务。
  由于系统不能指定生成列表页的数量,我们针对列表页生成的测试也无法完成。Php168内容页的生成速度还是不错的,在50万文章数据的基础上,100页文章数据的生成时间为约1分12秒。文章生成过程中有完成百分比的提示,时刻提醒用户生成的进度。
  结论:php168的静态页面生成和管理功能较为朴实,也相对简单,页面生成效率中规中矩,能够接受。
  (3)phpcms
   


  Phpcms页面发布管理界面
   


  页面生成过程
  评分:9.5分
  Phpcms提供的页面发布工具比较直观,管理分布比较清晰,功能也相对齐全,有首页、频道页、列表页和内容页等生成选项,内容页也支持按照ID编号的生成方法,所有生成选项在一个界面中就可以完成,操作非常简单,实用。
  相比并不花哨的发布管理功能来说,在接下来的静态页面生成的测试中,phpcms终于展露出其恐怖的实力,我们指定ID静态生成100个页面,用时仅为20秒!看到这个令人乍舌的成绩,小组成员几乎不敢相信自己的眼睛,于是接下来我们继续完成了1000个页面的静态生成测试,结果证明phpcms的静态页面生成能力是怪兽级的,1000个页面全部生成时间仅为28秒!而我们同步观察磁盘目录页面的生成情况,phpcms在生成静态页面时并不是一个一个页面完成,而是批量的同时生成。由于phpcms也没有提供按照指定页数的列表页生成机制,因此我们没有完成全部的列表页生成。
  结论:无论是管理工具、方法和页面生成的效率,phpcms无疑都是最优秀的,其他的cms难以望其项背。唯一遗憾的是没有提供按照指定页码生成列表页的功能。
  (4)ecms
   


  Ecms的页面发布管理页面
  评分:5分
  Ecsm提供了丰富的页面静态发布的管理工具,包括首页、列表页、内容页以及分频道的栏目及内容发布,按照时间和ID的内容生成页面等功能,ecms还提供了一个贴心的功能,即可以选择是否重新生成已经生成过的文件。
  Ecms的静态网页内容发布效率非常的低,50万数据基础上,发布100个页面居然花费了近12分钟时间,而且数据生成期间,电脑几乎无法操作,硬盘不停的进行读写操作,这一结果让小组颇感失望。列表页面生成同样没有提供按照页码生成的功能。
  结论:ecms的页面生成效率偏低,让人失望。
  (5)HBcms
   


  HBcms的文章静态生成管理
   
  HBcms的栏目列表静态管理
   
  HBcms的页面生成过程
   


  HBcms的100个页面生成时间
  评分:8.5分
  Hbcms的管理后台布局和样式测评小组一直都不喜欢,但是这不并影响hbcms在数据生成方面的优异表现,hbcms除了提供传统的首页、栏目页和文章页的静态生成功能外,还提供了按照关键字、按照ID生成页面等功能,并且允许按照页码范围生成栏目列表页面,功能看似简单却非常实用。
  Hbcms的内容页面生成的效率非常的高,我们测试了100页面生成时间仅为7.93秒,这个成绩甚至超越了phpcms之前创下的记录,但随着页面的增多,其表现却逊色于phpcms,1000个页面生成的花费时间为79秒,这个速度已经让小组成员感到非常意外了。同时hbcms的数据生成过程提供非常友好的提示信息,让人觉得颇为专业。
  结论:人不可貌相,海水不可斗量,hbcms虽然在管理界面和操作等方面没给我们留下好的印象,但是其优秀的数据管理效率确实让人刮目相看。
  (6)supesite
   

  Supesite的html静态生成管理界面
  评分:8分
  Supesite的对于静态HTML的管理手段可谓另辟蹊径,它并不主张管理员通过手工的方法批量生成静态HTML页面,而是通过用户访问触发的方式发生成html页面,这种方法不但极大减少了服务器的负担,并且减少了管理的操作步骤,对整站性能的提高亦非常明显。但系统提供的HTML手动生成的效率确实不敢恭维,建议不要通过手动的方式更新页面数据。
  结论:supesite给我们提供了另一种提高数据生成效率的方法,这种方法不但更为聪明,而且更加节省资源,因此虽然我们对其本身提供的页面生成工具颇有微词,但依旧赞同supesite的做法。
  (7)verycms
   


  Verycms静态生成的操作散布于各个管理界面中
  评分:6分
  Verycms的数据静态化管理分散于后台的各个管理界面中,也支持更新首页,频道首页,列表页和内容页等操作,但是相应的选项较少,也许是产品本身只是文章管理系统,即便是在动态的情况下,程序在访问效率上表现依旧不俗,但在静态页面生成效率这部分功能上实在不算优秀,50万数据的基础上,平均每分钟的页面生成速度仅为可怜的10页,系统值得称道的地方在于页面更新的时候,cpu占用率非常低。
  结论:使用verycms最好不要统一进行静态页面的更新,因为这不是该系统的长处。
  顺便提一下cmsware(思维cms),这个cms的静态发布也非常有特点,支持一键的整站更新,虽然更新的效率不高,但其特点是你可以监控系统更新过程中的每一个步骤。
   


  Cmsware的一键更新和更新监控
  小结
   

  3、网页访问速度测试
  由于静态页面访问没有什么可比性,页面访问速度只针对动态列表页的访问和翻页速度进行测试,由于各个cms的默认模板不相同,会造成访问速度的差异,因此这部分测试不作为主要评分依据。
   


  Dedecms 50万数据栏目动态列表
  Dedecms:与dedecms后台对大数据量管理非常吃力的情况不同,dedecms前台页面的动态列表效率还是可以忍受的,无论是数据的列表还是翻页,都效率较高。
  评分:7分

  Php168 50万数据栏目动态列表
  Php168:Php168文章列表的效率多少有点让人失望,看似并不复杂的模板,但打开栏目的列表页却花费了相当长的时间,随后的翻页也显得异常的艰辛。可见php168在前台模板驱动能力上有明显的欠缺。
  评分:6分
   
  Phpcms 50万数据动态列表页面
  Phpcms:继承了后台优秀的数据管理效率,phpcms的前台表现也依旧十分优秀,动态列表的情况下,无论是列表还是数据翻页,速度都在可接受的范围内,响应也很迅速。
  评分:8分
   


  Ecms 50万数据栏目动态列表页
  Ecms:帝国的情况总是和dedecms类似,其动态数据列表和翻页的效率都比较高,与其后台管理的速度极不相称。
  评分:7分
  HBcms:宏博cms要求前台的页面都必须生成静态页面,其动态页面的访问会被自动跳转到静态页面上,无法测试其在动态环境的前台表现。
  评分:7分
   


  Supesite 50万数据列表页面表页
  Supesite:边浏览边生成的效率无疑是最高的,supesite的页面执行时间毫无疑问是最短的,完全感觉不出来50万数据带来的任何问题。
  评分:9分
   

  Verycms 50万数据动态列表页面
  Verycms:全动态的列表和翻页效率都不错,但对于只有单一的文章管理功能来说, verycms亮点不多,距离一个优秀的cms系统还有差距。
  评分:8分
  五、综合评定
  综合以上三项的得分情况(比例分配为50%,40%,10%),相比之下我们更看重数据的可管理能力,最终给出的国内免费php类cms的数据负载排名如下(排名仅供参考):
   


  编辑选择奖:supesite
  特别推荐奖:phpcms
  总结评语
  经过几轮的测试,supesite和phpcms通过其优异的表现赢得了测评小组的青睐,通过三项得分数据看出他们在数据的管理能力上相比其他的cms更胜一筹。supesite取胜之道在于高效的后台管理和取巧的数据生成方法,优秀的品质使其成为最佳数据负载内容管理系统的不二人选,遗憾的是程序不开源;phpcms则各方面更加平均,尤其是数据生成能力非常优秀,加上程序完全开源,因此有很多的追随者,值得我们大力的推荐,但这套cms近来由于收购的原因,似乎停止了开发的脚步,不免让人担心其未来的发展;HBcms的表现完全出乎意料,在数据管理维护和生成方面有着非常明显的特点,效率也很高,但后台管理界面凌乱,希望能做进一步的改进;php168系统是一个中规中矩的内容管理系统,没有明显的弱项,也没有明显的强项,如果前台模板的效率能提高的话,会更有前途;verycms专注于文章管理领域,后台管理简洁,明快,效率也较高,但文章静态化的速度实在不该恭维,使用这个系统应尽可能减少批量生成文章的操作;帝国cms一直是受到个人站长追捧的一套内容管理系统,但是其在较大数据管理方面的表现差强人意,勉强及格;dedecms也是受到众多个人站长关注的网站内容系统,同时也因为其源代码开放而有相当多的研究者,但是其对较大数据的管理能力确实非常的差,数据量较大的网站不推荐使用。  

你可能感兴趣的:(开源cms,cms,php,语言,测试,工具,html)