写点什么

企业级 Rails 部署环境 RubyWorks 发布

  • 2007-05-17
  • 本文字数:1019 字

    阅读完需:约 3 分钟

在 RailsConf 2007 开幕前夕, ThoughtWorks Studios 发布了 RubyWorks 0.0.1 版本。在其网站上这样介绍这个开源项目:

RubyWorks 是一个 Rails 生产部署环境,它由一组开源软件共同组成,提供了在 RedHat 企业版 Linux 或者 CentOS 服务器上部署 Ruby on Rails 应用程序所需的软件和配置支持。 只要将服务器的包管理器(up2date 或者 yum)指向 RubyWorks 发行库,再安装 RubyWorks 提供的软件包,就可以立即获得已经预先配置好的 Rails 部署环境。到目前为止,这是最接近于“一步到位”的 Rails 生产部署环境。

Rails 应用在生产部署环境下的各方面能力(性能、伸缩性、可靠性、可管理性,等等)一直是人们怀疑“Rails 是否能够进入企业应用”的重要原因。经过实践检验,由 HAProxy Monit Mongrel 共同构成的部署环境已经具备了足够强大的能力。但这些软件的配置并不是一件易如反掌的事。

RubyWorks 的出现正是为了解决这个问题:遵循 Rails 社群一贯的“约定俗成优于配置(Convertion-over-Configuration)”的传统,RubyWorks 提供了一个缺省配置好的 Rails 部署环境。缺省配置会在服务器上开启 4 个 Mongrel 进程,分别占用 3002~3005 端口;并用 HAProxy(使用 3001 端口)进行负载均衡。

在《 Agile Web Development with Rails 》的第一版中所推荐的部署方案是基于 FastCGI 的,而第二版则改为推荐基于反向代理的部署方案。James Duncan Davidson 在书中写道:

但 FastCGI 也有很多问题。FastCGI 诞生于 1990 年代中期,但在 Rails 出现之前,它一直默默无闻。即便在被 Rails 重新带回公众视野之后,产品级的、高质量的 FastCGI 环境仍然寥寥无几。很多开发者(包括我们自己)都尝试过各种 Web 服务器与 FastCGI 的组合,并在每种组合中都发现了严重的问题。当然还是有些开发者在 FastCGI 上完成了部署,也没有遇到什么问题,但有那么多人遇到那么多问题,这本身就足以说明:FastCGI 不是一个值得推荐的解决方案。 [……]

简而言之,FastCGI 确实是一枚火箭,但有时会因为各种奇怪的原因而爆炸在发射台上。使用代理让 Rails 应用直接与 HTTP 对话,这是整个社群的发展方向。

RubyWorks 项目领导人 Alexey Verkhovsky 也认为,只有在对“节约内存使用”非常重视的情况下(例如虚拟共享主机),FastCGI 才有其价值;而在普通的企业应用中,可靠性和可管理性重于节约内存,这也是 RubyWorks 选择基于反向代理和 Mongrel 的部署方案的原因。

RubyWorks 还计划于近期推出对 Ubuntu 和 Debian 服务器的支持。

2007-05-17 23:001167
用户头像

发布了 21 篇内容, 共 33120 次阅读, 收获喜欢 2 次。

关注

评论

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

AWE Asia 2021 | 百度AI+AR,塑造AR应用智能新体验

百度开发者中心

AI 最佳实践 方法论

ONES x 华发集团 | 多团队多项目的高效管理实践

万事ONES

项目管理 项目管理工具

12306抢票算法居然是redis实现的

redis 架构 面试 高并发 计算机

C++后台开发—网络IO模型与Reactor模式

Linux服务器开发

reactor Linux服务器开发 C++后台开发 网络io IO模型

索信达:商业银行监管评级办法,新一代数据治理解决方案出炉

索信达控股

金融科技 数据治理 银行

后起之秀-network policy之eBPF实现

Lance

从头到尾没有一句废话!阿里Redis神级手册,从基础到源码一次讲清

Java 架构 面试 程序人生 编程语言

智能,服务,生态:华为调制的AIOps,味道有何不同?

脑极体

音频和视频流最佳选择?SRT 协议解析及报文识别

声网

音视频 协议 流媒体开发

公司应该如何招人?

石云升

团队管理 管理 引航计划 内容合集 9月日更

如何用一行代码使API提速几十倍

大伟

redis cache java

乌镇大会第七年,挥别错的才能和对的相逢

脑极体

2022界计算机毕业设计选题

清风

计算机毕业设计 java毕设选题

对象存储手把手教六 | CORS 入门讲解

QingStor分布式存储

SOA架构概述

SOA开发者

Alibaba深夜自爆“Java核心架构笔记”,太牛了

Java 编程 架构 程序人生 编程语言

如何用研发效能搞垮一个团队

CODING DevOps

团队协作 研发效能 CIF 峰会

2021最新版阿里巴巴内部百亿级高并发系统(全彩版小册开源)

Java 架构 面试 后端 高并发

太爽了!花了6个月18天,肝完阿里技术官的笔记,40*16K

Java 架构 面试 程序人生 编程语言

开源应用中心|五分钟教你搭建一个基于Laravel开发博客的应用

开源 开源社区 开源软件

未来E/E架构的发展情况

SOA开发者

2021年海南企业办理等保业务指南

行云管家

网络安全 等保测评 等保评测 海南

推动数据安全战略落地 新思科技给出这些建议

InfoQ_434670063458

四种主要网络IO虚拟化模型

hanaper

云短信服务孰优孰劣?博睿数据重磅发布云短信评测报告

博睿数据

【得物技术】深入理解synchronzied底层原理

得物技术

Java 原理 编译 synchronized 底层原理

源码大咖炼成记:阿里淘系技术专家首推《源码探索笔记》实属精品

Java 架构 面试 程序人生 编程语言

GraphQL 快速入门【5】GraphQL 示例

码语者

Rest graphql

Zookeeper入门看这篇就够了

牧小农

zookeeper

必须得会的汽车ECU研发基础--ECU软件架构概览3

SOA开发者

Springboot学习路线汇总(升职加薪必备架构图)

Java spring 编程 架构 后端

企业级Rails部署环境RubyWorks发布_Ruby_Jeff Xiong_InfoQ精选文章