阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

JRuby 1.7.0 发布:默认使用 Rudy1.9 模式,并可使用 InvokeDynamic

  • 2012-10-29
  • 本文字数:762 字

    阅读完需:约 3 分钟

在第一个预览版(见InfoQ 的报道)发布五个月之后及第二个预览版发布不久, JRuby 1.7.0 发布了正式版。

JRuby 1.7 最显著的变化就是使用 Ruby1.9.3 作为默认运行模式,当然它仍然支持 1.8.7. 从以下发布说明上看,尽管 JRuby 1.7 修复了很多与 1.9 不兼容的问题,但仍未完全支持 Ruby 1.9 的 所有特性。

“虽然 JRuby 1.7 对 1.9 的某些特性还不支持,比如 Ripper,但已经可以稳定地在 1.9 模式中运行产品应用程序了。在可预见的未来,我们会每隔 2 到 3 周发布一个 1.7.x 补丁包,这些补丁将会解决用户向我们报告的问题以及那些尚未完成的 1.9 的库。”

JRuby 1.7 不再继续支持 Java 5,同时 Rubygems 和 Rake 的相应版本也更新到 1.8.24 和 0.9.2.2。

JRuby1.7 能使用 Java 7 的 invokedynamic 功能,但和第一个预览版不同,此功能现在默认为关闭状态。详细原因可见 JRuby wiki

“OpenJDK7 的现有版本有时会发生错误或者无法优化代码。为了提供一致的 JRuby 体验,在 Java 7 中将默认关闭 invokedynamic 功能。

对于那些没有出现运行错误或者性能降低的应用,我们推荐开启 invokedynamic 功能以获得最大性能。可以通过强制传递以下参数“Xcompile.invokedynamic=true”给 JRuby(或者添加到 JRUBY_OPTS 里),或者在 Java 虚拟机层面设置 “jruby.compile.invokedynamic=true” 参数来开启 invokedynamic 功能。”

Java 8 builds 的 Java 虚拟机中 invokedynamic 功能默认是开启的。

您是否已经尝试过在 JRuby1.7 中开启 invokedynamic 功能? 您的应用的性能有了多少提升?

查看英文原文 http://www.infoq.com/news/2012/10/jruby-17


感谢李永伦对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2012-10-29 23:581004
用户头像

发布了 39 篇内容, 共 12.7 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

看门狗 | 分布式锁架构设计方案-01

九叔(高翔龙)

redis 分布式锁 RedLock WatchDog

架构师训练营高可用作业

qihuajun

MySQL DDL详情揭露

Simon

MySQL

oeasy教您玩转linux010102查看发行版

o

2020深圳站-GIAC全球互联网架构大会PPT分享

九叔(高翔龙)

架构 分布式系统 服务治理 大型网站演变 全链路压测

集成电路设计概括

老壳有点爽

芯片 集成电路 IC

Java 约束注解

HeGuang

如何提升系统可用性

码猿外

可用性 持续交付 工程能力 团队文化

再谈引入YAPI接口平台的好处

Man

DevOps YAPI API接口管理

MySQL备份与恢复场景示例

Simon

MySQL

PySpark RDD 基础运算和操作总结

是老郭啊

spark pyspark RDD

区块链之物流产业上链解决痛点

CECBC

区块链 供应链

第11周作业

小胖子

MySQL系列(二):MySQL是怎么处理并发操作的?

z小赵

MySQL 数据库 事务

透过兴趣爱好看本质

escray

学习 面试

JavaScript基础语法

Java

乘风破浪,Spring Boot入门

Simon郎

Spring Boot

强势入局,区块链专利将成为银行下一个战场?

CECBC

区块链 金融 银行

Flink中的数据传输-5

小知识点

scala 大数据 flink

我在项目中不可或缺么?

escray

学习 面试

我的缺点就是做事太认真

escray

学习 面试

LeetCode题解:25. K 个一组翻转链表,迭代,JavaScript,详细注释

Lee Chen

大前端 LeetCode

国产数据库的经济民族

郭华

数据库 商业

Golang领域模型-六边形架构

奔奔奔跑

微服务 领域驱动设计 架构设计 Go 语言

看门狗 | 分布式锁架构设计方案-02

九叔(高翔龙)

redis 分布式锁 Jedis RedLock

Python 核心技术与实践 input&output

Bonaparte

学会反射后,我被录取了(干货)

cxuan

Java 后端 反射

刘华:弹性便是一切

刘华Kenneth

架构 DevOps 敏捷 弹性

我能讲明白哪些技术?

escray

学习 面试 沟通

面试28k职位,老乡面试官从HashCode到HashMap给我讲了一下午!「回家赶忙整理出1.6万字的面试材料」

小傅哥

数据结构 面试 hashmap 红黑树

架构师训练营高可用学习总结

qihuajun

JRuby 1.7.0 发布:默认使用Rudy1.9 模式,并可使用InvokeDynamic_语言 & 开发_Mirko Stocker_InfoQ精选文章