今天我无意间看到了一个Grails与RoR(Ruby on Rails)的性能比较(此文已更新,但结果大致不变),觉得有必要与各位还不了解Grails的朋友分享一下,以消除对Grails的神秘感甚至误解:
硬件:
- Apple MacBook
-
1.83ghz Intel Core Duo
-
1GB 667 Mhz DDR2 SDRAM
软件:
Grails
- OS: Mac OS X 10.4.9
- Server: Apache Tomcat 5.5.20
- Version: 0.5-SNAPSHOT from 20th of March
- Environment: Production
- Database: MySQL 5.0.27
- Java: Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164) //注意,还没有用到目前性能最好的JDK6
- JDBC Driver: mysql-connector-java-3.1.10-bin.jar
Rails
- OS: Mac OS X 10.4.9
- Server: Mongrel 1.0.1
- Version 1.2.3
- Environment: Production (Started with mongrel_rails start -e production)
- Database: MySQL 5.0.27
- Other notes: I installed the Ruby MySQL native bindings as per the aforementioned article
测试如下操作:
- 读取
- 创建
- 查询
- 更新
- 页面生成,直接写入响应(Response)
测试结果如下:
读取方面的性能
创建记录方面的性能
查询方面的性能
更新记录并生成页面方面的性能
更新随机的3条记录并以XML形式返回方面的性能
更新随机的3条记录并以String形式返回方面的性能
结论
:正如所料想的那样,由于Grails是由15%的groovy代码和85%的Java代码写成,并建立在千锤百炼的经典框架(Spring,Hibernate,Sitemesh)之上,所以
在各项测试中,Grails均击败了RoR,值得注意的是:Grails目前还没有经过特殊优化,且发起要比RoR晚两年。由此可见,单从性能方面考虑,Grails可以应用在任何应用RoR的项目中,而从开发语言来说,Groovy相对Ruby对于广大的Java开发者来说更友好。另外Groovy1.0发布后,Grails(目前版本为0.4.2)紧锣密鼓,加快了开发步伐,有望于今年(即2007)年中(非年终)发布1.0,可见,Grails前景一片光明。
附:
Groovy轻松入门--Grails实战基础篇
posted on 2007-03-24 00:32
山风小子 阅读(11287)
评论(21) 编辑 收藏 所属分类:
Groovy & Grails