AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

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:052091
用户头像

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

关注

评论

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

第十三周命题作业

cc

设计模式【2.2】-- 工厂模式怎么演变成抽象工厂模式?

秦怀杂货店

设计模式 工厂模式 23种设计模式 工厂方法模式

Linux c 开发 - 内存管理器ptmalloc

赖猫

Linux 后台开发 内存管理

第十三周学习心得

cc

极客大学·产品经理训练营·第四章作业(第五周)

二大爷

极客大学产品经理训练营

「产品经理训练营」第五周 作业记录

周玲

地表建筑物识别 Dayo2

IT蜗壳-Tango

七日更 28天写作 2月春节不断更

圈子创业

张老蔫

28天写作

关于MVCC,我之前写错了,这次我改好了!

艾小仙

Java MySQL 数据库 面试 MVCC

用例画成流程图 - 第四章,第三讲总结

mas

得不到的永远在骚动——蔡格尼克效应

Justin

心理学 习惯养成 28天写作 游戏设计

深度集成 Flink: Apache Iceberg 0.11.0 最新功能解读

DataFunTalk

2021金三银四必备:Java后端开发面试总结【25个技术专题】

比伯

Java 编程 架构 面试 计算机

产品经理训练营-第五周学习总结

月亮 😝

28天瞎写的第二百四十二天:正念冥想,我要想什么?

树上

冥想 28天写作 正念

框架效应如何影响人的决策?「Day 4」

道伟

心理 决策 28天写作

翻译:《实用的Python编程》02_04_Sequences

codists

Python 人工智能 面试 数据结构与算法 序列

现在与以前的你相遇在此刻,让二种不同的风格,创造未来你自己的手艺吧。

叶小鍵

将上周写的用例画成流程图-第四章,第三讲

mas

工作中当你感觉焦虑的时候,该怎么办?

一笑

28天写作

【计算机内功修炼】九:程序员应如何理解协程

码农的荒岛求生

线程 操作系统 进程 协程

面试中经常问到的动态代理到底是什么

废材姑娘

Java

Elasticsearch Validate API

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 二月春节不断更

索引失效的场景

new life

MySQL 索引性能

电商平台:收货地址

worry

电商平台

AI数学基础之:奇异值和奇异值分解

程序那些事

人工智能 机器学习 程序那些事 矩阵运算

使用 Tye 辅助开发 k8s 应用竟如此简单(五)

newbe36524

微服务 netcore 全链路追踪 dotnet dapr

改变认知,到写作方式的改变

数列科技杨德华

28天写作

产品经理训练营-第五周作业

月亮 😝

程序员的职业生涯与赛道选择

刘旭东

职业规划 码农 职业生涯

保持前进

Nydia

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