写点什么

Charles Nutter:为何选择 JRuby?

  • 2010-03-18
  • 本文字数:865 字

    阅读完需:约 3 分钟

作为 MRI 之外的另一个 Ruby 实现,JRuby 正受到越来越多的关注,日前 JRuby 团队核心成员 Charles Nutter 接受了一个访谈,深度探讨了很多JRuby 相关的话题。

首先,JVM 是一个相当成熟的VM,在内存管理、性能、安全性等方面都表现出色,而且覆盖几乎所有平台,同时拥有多个持续维护的实现可供选择。JRuby 基于JVM 之上,天生拥有很多优势。例如MRI 上经常被提及的垃圾回收性能问题, REE 通过 GC 补丁大幅提升了性能,而 JRuby 则可充分利用 JVM 的垃圾回收机制。

在 JRuby 中,我们能充分利用 JVM 在 GC 方面多年努力的结果。以 Hotspot 为例,这是通常我们用来测试的 JVM,你有不止 1 个,而是 5 个可供选择的垃圾回收器。[…] 根据应用程序行为(或者你需要的行为)的不同,这些垃圾回收器能协同工作。而且你还能对它们进行调整和监控。

在多种 Ruby 实现中,JRuby 的启动时间相对较长,而且启动后还要经过一段“预热”,JRuby 才能发挥其最佳性能。这对服务器端应用来说不算什么,可客户端程序就不行了。Charles 在其近期的博客中也提供了一些建议,帮助缩短启动时间。好在情况正在不断改观,新版JVM 发布后,JRuby 的启动速度将会得到进一步提升。

Java 在企业级应用方面有着大量的经验,借助 JRuby,我们能够更好地融合 Ruby 与 Java,为开发者提供更好地工具及环境(例如 Torquebox ):

Torquebox 和 GlassFish 都是很好的例子,通过一点 Ruby 技巧,如何赋予 Java/JVM 生态环境中最好的那些部分新的力量。无论选择谁,你都将获得一个简单的一站式部署方案,其中包含了设计良好的服务 API 和管理工具。

JRuby 自 1.2 RC1 开始就支持 Android 平台, ruboto 已能很好地在手机上提供 irb 功能。Android Scripting Environment 也提供了 JRuby 支持。随着 Android 1.6 和 2.0 的更新,无需任何修改就能在 Android 平台上运行 JRuby 的日子也不会远了。

虽然自去年 11 月 JRuby 1.4 发布后,很长一段时间都没有发布新版本,但 JRuby 的社区正在不断发展,相信 2010 年里,JRuby 将会有更好地表现。作为读者,您对 JRuby 的看法是什么?您会在项目中使用 JRuby 吗?

2010-03-18 02:052320
用户头像

发布了 135 篇内容, 共 66.2 次阅读, 收获喜欢 43 次。

关注

评论

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

全网都在跪求的阿里Java修炼开发技术笔记,终于开放下载了(1)

Java 程序员 后端

公司CTO:高性能开发,你不会Netty,java支付模块架构

Java 程序员 后端

分享23种追女生的方式,教你同时把追MM和设计模式融汇贯通(下

Java 程序员 后端

先到先得!价值百万的的ELk+Lucene笔记,阿里P7架构师带你看透maven的来龙去脉

Java 程序员 后端

全网都在跪求的阿里Java修炼开发技术笔记,终于开放下载了

Java 程序员 后端

全网首发!今年的第一份Spring Boot实战派,让开发像搭积木一样简单

Java 程序员 后端

全靠这份阿里大厂Java面试真题手册,让我成功拿下12家大厂offer

Java 程序员 后端

使用IDEA的Docker插件部署SpringBoot项目,让我成功在寒冬中站稳脚步

Java 程序员 后端

使用Redis和Java进行数据库缓存 - DZone数据库,工作感悟

Java 程序员 后端

保姆级教程!手把手带你用数据库中间件Mycat+SpringBoot完成分库分表

Java 程序员 后端

做个小项目那不是简简单单!Java实现航空航班管理系统。

Java 程序员 后端

六月份参加字节移动中台一二三面,一腔热血,终上岸,java面试设计模式的使用

Java 程序员 后端

刚从蚂蚁金服面试回来,分享我拿到社招Java研发岗offer的过程

Java 程序员 后端

全网最全Spring面试题之基础篇整理总结(共69题,附超详细解答

Java 程序员 后端

写博客是一种乐趣,一种需要培养的乐趣,【性能优化实战】

Java 程序员 后端

入职字节跳动那一天,我哭了(蘑菇街被裁,java中异常处理机制的原理和应用

Java 程序员 后端

分布式系统的一致性级别划分及Zookeeper一致性级别分析

Java 程序员 后端

使用Hystrix的插件机制,解决在使用线程隔离时,threadlocal的传递问题

Java 程序员 后端

分享我的2021京东4面面经,送给备战金三银四的你,Java小程序开发实例

Java 程序员 后端

分布式、微服务必须配个日志管理系统才优秀,Exceptionless走起

Java 程序员 后端

第15份敏捷年度状态报告

Bruce Talk

敏捷 Agile

写了一年golang,来聊聊进程、线程与协程,javamap底层原理

Java 程序员 后端

你遇到过哪些质量很高的 Java 面试?,nginx教程阮一峰

Java 程序员 后端

使用 nodejs 中的 http 模块实现几个超实用的工具,实战java虚拟机葛一鸣第二版pdf

Java 程序员 后端

带你了解Node.js包管理工具:包与NPM

华为云开发者联盟

node.js 工具 npm 文件

全网首发“Java面试考点大全”,深入linux内核架构pdf百度云

Java 程序员 后端

全靠阿里内部(珠峰版)Java面试笔记,mysql数据库教程郑阿奇答案

Java 程序员 后端

分享成功逆袭到美团面试心得:面试题(含答案,springboot面试题

Java 程序员 后端

分布式系统改造方案——数据篇,Java架构师视频

Java 程序员 后端

使用OPCAutomation实现对opc数据的访问,腾讯数据分析面试春招2021

Java 程序员 后端

出招吧!腾讯专家手敲《Redis源码日志笔记,如何成为一个更好的Java开发者

Java 程序员 后端

Charles Nutter:为何选择JRuby?_Java_丁雪丰_InfoQ精选文章