`
moonese
  • 浏览: 12875 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Groovy 1.7beta2 性能下降了?

    博客分类:
  • java
阅读更多

这两天看 Groovy 1.7 beta2 和 1.6.5 都出来了,两个版本都可以从这里 下载到。

简单的对比了在 Java 代码中调用 Groovy 脚本的初始化时间 ,1.7b2 比 1.6.5 慢了将近 25%。


测试代码如下:

 

public class GroovyTest {
 
        public static void main(String[] args) {
		long time1 = System.currentTimeMillis();
 
		// init Groovy Binding
		Binding binding = new Binding();
		GroovyShell shell = new GroovyShell(binding);
		Object o = shell.evaluate("true");
 
		long time2 = System.currentTimeMillis();
 
		System.out.println("\n[Time Cost  ] : " + (time2-time1) );
	}
}

 

 

用 1.6.5 的 jar 执行时间在 750ms 左右;而 1.7b2 环境下,则需要 1000ms 左右。

 

看来性能的问题始终还是困扰着 Groovy,不能让人满意。

 

 

2009-10-14 更新:

 

JohnnyJian 回复说上面比较的不是“性能”,而是“启动时间”,于是也比较下执行原生的 Groovy 脚本的性能。

 

这里直接参考了这篇文章的内容 ,该文比较了Java, Lua, Groovy, Python, Ruby 等多种语言的性能。

 

在我的机器上测试文中 Groovy 版的脚本,1.7b2 下执行时间:8.5 s; 1.6.5 下:6.781 s,结果也是慢 25% 左右。

 

 

 

2009-10-23 更新:

 

Groovy 1.7.0 发布了,又运行了上面提到的脚本测了下性能,5次中最好的成绩是 8.36s,还是比 1.6.x 下慢很多。

 

只能希望 Groovy 1.8.x 里面会有比较大的改进了。

 

 

0
0
分享到:
评论
2 楼 moonese 2009-10-14  
JohnnyJian 写道
你测的是“启动时间”,而不是“性能”
要等Groovy 1.8,启动时间才会减少


这个应该是 Groovy 脚本的初始化时间,我的理解也应该是整个脚本执行的一部分的。
BeanShell 的初始化时间就少的多的多了。

当然也要看具体的应用场景,如果脚本只是初始化一次,以后每次直接用解析好的对象执行,那也跟执行 Java 代码差不太多,关于这个的性能网上的比较很多的。

Groovy 1.8 没有关注过,要是能加快启动,那就太好了。
1 楼 JohnnyJian 2009-10-13  
你测的是“启动时间”,而不是“性能”
要等Groovy 1.8,启动时间才会减少

相关推荐

    groovy 1.7官方教程

    ### Groovy 1.7 官方教程知识点详解 #### 一、Groovy简介 - **定义**:Groovy是一种灵活且动态的语言,专为Java虚拟机(JVM)设计。 - **特点**: - **继承优势**:在保留Java强项的基础上,引入了更多来自Python...

    groovy-all-1.7.6.jar中文-英文对照文档.zip

    注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    gant_groovy1.7-1.9.6.jar

    实测可用

    gant_groovy1.7-1.9.7.jar

    实测可用

    gant_groovy1.7-1.9.7-sources.jar

    实测可用

    gant_groovy1.7-1.9.7-groovydoc.jar

    实测可用

    gant_groovy1.7-1.9.6-groovydoc.jar

    实测可用

    gant_groovy1.7-1.9.6-sources.jar

    实测可用

    Groovy1.8 beta 官方文档-1269页

    Groovy1.8 beta版本是该语言的一个重要里程碑,引入了许多新特性和改进,旨在提高开发效率和代码的可读性。这份1269页的官方文档详细阐述了Groovy1.8 beta的所有核心概念、语法以及API。 在Groovy1.8中,最重要的...

    最新版Groovy -binary-1.7.4.zip

    groovy-binary-1.7.4.zip groovy-binary-1.7.4.zipgroovy-binary-1.7.4.zipgroovy-binary-1.7.4.zipgroovy-binary-1.7.4.zipgroovy-binary-1.7.4.zipgroovy-binary-1.7.4.zip

    apache-groovy-sdk-2.5.0-beta-2.zip

    Apache Groovy SDK 2.5.0-beta-2是一个重要的软件开发工具包,专为Groovy编程语言设计,这是Groovy的一个预发行版本,旨在在正式发布前进行测试和优化。Groovy是一种强大的、动态的、基于Java平台的脚本语言,它提供...

    groovy-2.4.0-beta-1.zip

    Groovy-2.4.0-beta-1.zip 是一个压缩包,其中包含了Groovy编程语言的一个特定版本,即2.4.0的测试版1。Groovy是一种动态、灵活的面向对象的脚本语言,它运行在Java平台上,并且与Java紧密集成。Groovy提供了简洁的...

    jdk1.7 jdk1.7 jdk1.7

    **Java Development Kit (JDK) 1.7详解** JDK(Java Development Kit)是Oracle公司发布的用于开发和运行Java应用程序的重要工具集。在给定的标题“jdk1.7 jdk1.7 jdk1.7”中,反复提及的“1.7”指的是Java的第七个...

    groovy-all-1.7-beta-1.jar中文-英文对照文档.zip

    注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    groovy eclipse plugin2

    groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2

    gbench-0.3.1-groovy-1.7.jar

    实测可用

    gbench-0.4.2-groovy-1.7.jar

    实测可用

    gbench-0.4.0-groovy-1.7.jar

    实测可用

    groovy-2.5.0-beta-2-installer.exe

    groovy-2.5.0 windows 安装包 Groovy 2.5 is the upcoming version of Groovy. For Windows installer 截至2017.11.09 groovy最新最稳定版本 md5: c8b6230728044db6399c837fcf6a23f2 大小:44.9 MB

Global site tag (gtag.js) - Google Analytics