有关Ruby企业版1.8.7的一些介绍

开发 开发工具
最近发布的新的Ruby Enterprise Edition基于Ruby 1.8.7,各方面测试的结果显示这个版本在改善性能、减少内存开销上有着显著的提升。目前还有少许兼容问题,不过将逐步改善。

前几周,Ruby企业版(Ruby Enterprise Edition,简称REE)升级到了1.8.7,各个方面对这个版本的运行情况都十分满意。下面,InfoQ的Mirko Stocker对REE 1.8.7的一些情况进行了总结。

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的新版本。

【编辑推荐】

  1. DHH漫谈Ruby on Rails的文化
  2. Matz访谈录:我为什么要创造Ruby语言?
  3. 李刚老师谈Ruby语言的未来
  4. 陆亦斌谈Ruby语言的发展与前景
  5. Ruby百家谈
责任编辑:yangsai 来源: InfoQ
相关推荐

2011-03-16 15:35:50

Debian

2018-07-23 12:03:01

2009-08-27 11:02:22

JavaScript事

2012-06-29 15:57:45

SaaS

2019-10-15 06:00:26

Google AnalAngularReact

2011-05-23 18:06:24

站内优化SEO

2010-04-07 16:55:14

Unix命令

2009-08-21 18:05:23

ASP.NET Ses

2009-08-04 16:06:19

ASP.NET代码分离

2009-06-18 10:53:52

Hibernate3.

2024-01-09 13:36:44

存储数据存储

2012-11-27 10:47:39

红帽OpenShift

2009-09-10 16:01:26

介绍LINQ

2010-03-24 18:27:27

无线mesh网络应用

2017-09-01 12:48:34

DevSecOps安全运维

2021-09-28 06:28:51

EF错误用法

2023-10-26 21:39:21

2009-08-14 17:49:02

ASP.NET MVC

2022-05-24 12:50:58

Pandas索引代码

2010-09-07 11:28:15

SQL语句
点赞
收藏

51CTO技术栈公众号