2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Ruby Enterprise Edition 新版本切换至 Ruby 1.8.7

  • 2009-10-15
  • 本文字数:1101 字

    阅读完需:约 4 分钟

Phusion发布了新的 Ruby Enterprise Edition ,版本号为 1.8.7-20090928。之前的版本都基于 Ruby 1.8.6,该版本开始基于 Ruby 1.8.7。Ruby 1.8.7 发布已经有段时间了,为什么现在才切换到 1.8.7 呢?Phusion 在发布声明中解释了这个问题:

我们起先并不愿意切换到 1.8.7:很多人报告说在引入 1.8.7 后遇到了各种不兼容的情况,而且其他几个 Ruby 实现都抵制 1.8.7。然而,现在的情况不同了。Rails 3.0 将不再支持 Ruby 1.8.7 之前的版本,JRuby 最近也决定支持 1.8.7,并且 OS X Snow Leopard 和所有 Linux 发行版都自带了 1.8.7。我们已经收到了来自社区的很多请求,希望能有一个基于 1.8.7 的版本。

本次发布还有一些其他的消息——新版本集成了 Brent Roman 的 MBARI 补丁,它能改善性能、减少内存开销。为了提升多线程速度,该版本中还包含了一个作为可选实验特性的补丁(作者是Joe Damato 和Aman Gupta)

这些补丁究竟起了多少改善作用呢?Twitter 对该版本做了测试,正如Evan Weaver 报告的那样,它在吞吐量上带来了显著的提升。Evan 还补充道“比起-O2 或-O3(针对速度优化),用-Os(针对大小优化)编译的Ruby 更快一些。Phusion 的 Hongli 指出 Ruby 的指令局部性很糟,主要是靠将指令塞进指令缓存中来改善性能的”。

InfoQ 向 Ruby Enterprise Edition 团队咨询了在升级到新版本时是否存在一些问题。Phusion 的 Ninh Bui 回答道:

呃,除了从 1.8.6 到 1.8.7 的兼容性问题,tcmalloc——我们使用的内存分配器——在 Snow Leopard 上还无法正常工作。

Ninh 的同事 Hongli 还补充说:

目前 Xen 的支持方面还存在一些问题:有报告说 REE 在 Xen 中运行时输出了很多(无害的)警告信息。我们计划在以后的版本中加入 Xen 特有的编译标志来解决这个问题。至于 1.8.6 和 1.8.7 的不兼容性,这是由语义变化造成的,例如,一些方法现在不再返回 Array,改为返回 Enumerable;一些标准库类有细微变化,等等。 社区已经接受了这些变化,因此我并不认为会有不兼容的问题。

您可在 www.rubyenterpriseedition.com 获取到 Ruby Enterprise Edition 的新版本。

查看英文原文: New Ruby Enterprise Edition Release Switches to Ruby 1.8.7 - - - - - -

译者介绍:丁雪丰,网名 DigitalSonic,满江红开放技术研究组织核心成员, Spring Framework 2.0 & 2.5 文档翻译项目负责人,也参与了 Hibernate、Seam 等多份文档的翻译及校对工作。平时积极投身开源项目,是著名SFTP/SCP 软件WinSCP 的简体中文汉化者。参与翻译及编著的书籍有《Spring 攻略》《JRuby 实战》等。InfoQ 中文站内容团队,尤其是架构、SOA 和Ruby 社区需要您的参与,有意者请邮件至 editors【AT】cn.infoq.com

2009-10-15 04:412004
用户头像

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

关注

评论

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

Flink应用开发

阿泽🧸

flink 三周年连更

1分钟学会、3分钟上手、5分钟应用,快速上手责任链框架详解 | 京东云技术团队

京东科技开发者

Netty 京东云 企业号 5 月 PK 榜

手把手教会你 | 网络编程

TiAmo

socket通信 服务器编程 单用户模式

海泰方圆《数字政府密码应用与数据安全合规性建设指南》顺利通过评审

电子信息发烧客

C++多线程编程和同步机制:详解和实例演示

小万哥

c++ 程序员 后端 多线程 同步

服务网格(Service Mesh)是什么?

乌龟哥哥

三周年连更

Java实现坦克大战1.0

timerring

Java

使用 NutUI 搭建「自定义业务风格」的组件库 | 京东云技术团队

京东科技开发者

京东云 企业号 5 月 PK 榜

MySQL一次大量内存消耗的跟踪

GreatSQL

Zebec生态发展进入加速期,拿好ZBC坐等价值兑现

西柚子

开源项目LuckyDraw分享&介绍

进基的小张

小程序 开源 开发 GitHub、 项目上线

下载LORA模型

IT蜗壳-Tango

三周年连更

2 行代码开启 SAST,将代码漏洞定位到具体行数

极狐GitLab

DevOps DevSecOps SAST 应用安全测试 安全扫描

LLMs 记忆体全新升级:六大新功能全面出击,用户体验值拉满!

Zilliz

大模型时代 向量数据库 zillizcloud LLMs

2023-05-05:给定一个无向、连通的树 树中有 n 个标记为 0...n-1 的节点以及 n-1 条边 。 给定整数 n 和数组 edges , edges[i] = [ai, bi]表示树中的

福大大架构师每日一题

golang 算法 rust

Zebec生态发展进入加速期,拿好ZBC坐等价值兑现

股市老人

Markdown基础语法教程

进基的小张

学习 markdown markdown语法 markdown编辑器 基础

Java多线程基础

timerring

Java

async/await详解

不叫猫先生

JavaScript async/await 三周年连更

PS 2020 photoshop绿色版

源字节1号

这8种常见的防火墙,分别有哪些优缺点?

wljslmz

防火墙 三周年连更

ChatGPT 何时替代码农?

酱紫的小白兔

码农 机器人 ChatGPT

木兰汇专访 | 网心科技联合创始人马婷:创业者的“长期主义”

网心科技

《AGI时代的破局之道 | 社区征文》

后台技术汇

三周年征文

Kafka性能测试初探

FunTester

云原生典型应用架构

穿过生命散发芬芳

云原生架构 三周年连更

matlab实现通信原理

袁袁袁袁满

三周年连更

Shell脚本的变量

芯动大师

Shell命令 三周年连更 shell变量

【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的限流器RateLimiter功能服务

码界西柚

分布式 限流器 三周年连更 动手实现 RateLimter

【问题排查篇】一次业务问题对 ES 的 cardinality 原理探究 | 京东云技术团队

京东科技开发者

ES 京东云 企业号 5 月 PK 榜

Ruby Enterprise Edition新版本切换至Ruby 1.8.7_Ruby_Mirko Stocker_InfoQ精选文章