QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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

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

关注

评论

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

程序员成长第六篇:如何选择公司?

石云升

职业发展 2月春节不断更 选择公司

走进 Tokio 的异步世界

lipi

rust 异步 tokio

程序员成长第七篇:面试中需要注意的事项

石云升

面试 招聘 2月春节不断更

【LeetCode】数据流中的第 K 大元素Java题解

Albert

算法 LeetCode 2月春节不断更

一个人的春节,也要过得开心

程序员架构进阶

个人感悟 七日更 2月春节不断更

Ray 1.0 架构解读

lipi

分布式计算 Apache Arrow ray

香,聊聊TiDB的分布式事务模型

君哥聊技术

分布式数据库 TiDB Percolator

【STM32】stm32f407 + DS18B20 碰出不一样的火花

AXYZdong

硬件 stm32 2月春节不断更

7. ✎会查新华字典不?会。Python字典已经掌握了

梦想橡皮擦

Python 爬虫 2月春节不断更 python入门

前端冲刺必备指南-执行上下文/作用域链/闭包/一等公民

我是哪吒

面试 大前端 编程语言 2月春节不断更 二月春节不断更

产品经理训练营第四周作业

产品经理训练营

过节 劝你少喝酒(一)

三号无名指

业务中台建设 - C端用户中心

孝鹏

中台架构 用户

牛年到 春节快乐

小马哥

2021年展望

CNCF 2021年展望:外围有亮点,核心还有硬仗

杨明越

前端冲刺必备指南-HTTP/HTTPS/HTTP2/DNS/TCP/经典题

我是哪吒

学习 程序员 面试 大前端 2月春节不断更

【LeetCode】杨辉三角Java题解

Albert

算法 LeetCode 2月春节不断更

香烟缭绕的岁末

ITCamel

Java反射--2021面试题系列教程(附答案解析)--大白话解读--JavaPub版本

JavaPub

Java 面试 反射 java反射 javapub

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

羽室

GitHub 上的优质 Linux 开源项目,真滴牛逼!

JackTian

GitHub Linux 开源 运维工程师 2月春节不断更

【STM32】1.44寸TFT液晶屏显示字符、汉字和图片

AXYZdong

硬件 stm32 2月春节不断更

LeetCode题解:297. 二叉树的序列化与反序列化,BFS,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

日记 2021年2月11日(周四)

Changing Lin

2月春节不断更

微信限量纪念版code封面来啦,速看领取方式

孙叫兽

视频号 2月春节不断更 孙叫兽 微信红包封面 纪念版

倒排索引 Inverted Indexes

escray

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

6. Python 元组,不可变的列表,滚雪球学 Python

梦想橡皮擦

Python 2月春节不断更 python入门

给自己的新年指南

boshi

七日更 新年

机器学习·笔记之:inverse and transpose

Nydia

Electron 多进程方案

将儒

Electron 多进程

编写优雅Javascript代码的最佳实践

devpoint

js 纯函数

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