AICon 北京站 Keynote 亮点揭秘,想了解 Agent 智能体来就对了! 了解详情
写点什么

企业级 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:001331
用户头像

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

关注

评论

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

关于Promise你需要知道的一切

devpoint

大前端 Promise 引航计划

从产业链、架构和技术三个层面,看元宇宙与RPA的发展关系

王吉伟频道

RPA 自动化 区块链+ 机器人流程自动化 元宇宙

「Python数据分析系列」1. 数据科学基本介绍

Databri_AI

Python 人工智能 数据分析

百度飞桨发布开源生态最新成果:汇聚370万开发者

百度大脑

人工智能

百度联手清华大学出版社 打造国内首套产教融合人工智能系列教材

百度大脑

探究数字内容生产商机,把握未来内容生产脉搏

华为云开发者联盟

媒体 视频 华为云 数字内容 影视

走进吉利|EMQ 映云科技助力车企“新四化”

EMQ映云科技

车联网 物联网 IoT emq iov

Centos7升级Python2到Python3

入门小站

Linux

用 Go 写的轻量级 OpenLdap 弱密码检测工具

Marionxue

Docker Docker-compose 弱密码 openldap Go 语言

Java 面试八股文之基础篇(一)

Dobbykim

宇宙最强语言PHP的“全栈”框架——Laravel来了!

博文视点Broadview

读《第一次把事情做对》有感

孙叫兽

工作 引航计划 第一次 做对

不吹不黑一份代码即可进Kaggle排行榜!

cv君

AI 引航计划

让数据“活”起来 腾讯位置服务数据可视化JS API持续升级

国庆出游神器:魔幻黑科技换天造物,让vlog秒变科幻大片!

华为云开发者联盟

视频 modelarts 科幻 国庆 天空

看动画学算法之:doublyLinkedList

程序那些事

数据结构 算法 看动画学算法 程序那些事

华为云开源的Karmada正式成为CNCF首个多云容器编排项目

华为云开发者联盟

容器 集群 cncf Karmada

在线GIF图片帧拆分工具

入门小站

工具

微信朋友圈 - 服务高性能复杂度分析

黑鹰

一文讲清楚FusionInsight MRS CDL如何使用

华为云开发者联盟

大数据 数据湖 FusionInsight MRS 集成 CDL

恒拓高科亮相中国-东北亚博览会,赋能海内外企业构建数字化新生态

BeeWorks

阅读

WebRTC 的本地视频预览播放器

liuzhen007

音视频 引航计划 领航计划

湖南交通学院校友联谊圈小程序设计方案

CC同学

一文深度挖掘AI的图像分类能力!

cv君

AI 引航计划

Go 新人学习资料汇总(持续更新)

baiyutang

golang 9月日更

谈 C++17 里的 State 模式之一

hedzr

算法 设计模式 Design Patterns c++17 有限状态机

一文教你全方位揭秘Ajax指南

孙叫兽

ajax 大前端 引航计划

WebRTC如何在网页端添加硬水印

liuzhen007

音视频 引航计划 领航计划

监控系统使用对比 -- 你怎么看当前的主流监控系统

耳东@Erdong

关系型数据库 Prometheus 时序数据库 zabbix 9月日更

Dom4j 如何输出 Document 中的内容到文本

HoneyMoose

堡垒机和虚拟机的两大区别分析-行云管家

行云管家

网络安全 虚拟机 服务器 堡垒机

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