速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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

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

关注

评论

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

基于二代征信报告的信用评估模型实践

中关村科金

金融 征信 风控 对话式AI

template竟能使一套C++代码支持多个客户?

老王同学

c++ template

从零学习SDK(1)什么是SDK,为什么要使用它

MobTech袤博科技

如何在 Web 实现支持虚拟背景的视频会议

声网

Web 视频会议 RTE 虚拟背景

软件测试/测试开发丨实战演练基于加密接口测试测试用例设计

测试人

软件测试 自动化测试 测试开发

MobTech 秒验|本机号码一键登录会泄露隐私吗

MobTech袤博科技

华为云开源OpenTiny项目中TinyVue组件库和TinyNG组件库的区别是什么?

英勇无比的消炎药

前端 开源、 OpenTiny UI组件库

尚硅谷新版Git视频教程发布

小谷哥

MIAOYUN与OpenCloudOS、TencentOS Server 3完成产品兼容互认证

MIAOYUN

容器云 云平台 产品兼容性互认 互认证 兼容性互认证

浙江宁波|2023年上半年宁波市镇海区高层次人才项目政策申报

科兴未来News

8个可以免费下载3D模型的网站,快收藏起来吧~

Finovy Cloud

3D软件 3ds Max

阿里云弹性计算资深技术专家徐海弘:云上自动化运维成熟度模型

云布道师

弹性计算

Fabarta 正式加入大数据技术标准推进委员会,共同推动大数据技术标准化进程

Fabarta

人工智能 图数据库 分布式图数据库 图智能

ZRTC高并发策略在专属音视频中台场景的应用

中关村科金

RTC 中关村科金 音视频中台 高并发策略 对话式AI

大模型打开了一层技术天花板,催生新场景变革老场景

中关村科金

人工智能 企业服务 大模型 对话式AI

低代码有哪些缺点?4千字深入解析

优秀

低代码 低代码缺点

MobPush推送查询API

MobTech袤博科技

CodeGeeX 130亿参数大模型的调优笔记:比FasterTransformer更快的解决方案

Openlab_cosmoplat

Python 开源社区

博睿学院 | 本周四:ETL技术在数据标准化中的应用实践

博睿数据

ETL 智能运维 博睿数据 博睿学院

Birdwatcher 进阶使用指南

Zilliz

Milvus 向量数据库 birdwatcher

flutter系列之:在flutter中使用相机拍摄照片

程序那些事

flutter 架构 大前端 程序那些事

字节跳动CVPR 2023论文精选来啦(内含一批图像生成新研究)

字节跳动技术范儿

字节跳动 算法 计算机视觉 CVPR AIGC

华为开源项目OpenTiny的TinyVue组件库适用于哪些地方?

英勇无比的消炎药

前端 开源、 OpenTiny UI组件库

「刷起来」Go必看的进阶面试题详解

王中阳Go

golang 高效工作 学习方法 面试题 Go 语言

浙江宁波|2023年度宁波市甬江引才工程

科兴未来News

如果用ChatGpt给OpenTiny官网设计页面会怎样?

英勇无比的消炎药

开源 前端 OpenTiny UI组件库

揭秘 Milvus 助力平台建设的终极奥义

Zilliz

Meetup Milvus 向量数据库

OpenTiny的设计理念是什么?

英勇无比的消炎药

开源 OpenTiny UI组件库

量化交易场景下日增 144 万条数据,使用 MySQL 和 TDengine 分别如何建模?

TDengine

大数据 tdengine 物联网 时序数据库

传输体积下降 85%,融云 HTTP 压缩算法解析

融云 RongCloud

算法 音视频 传输 融云 通讯

跨越AI大门,一本翻译蓝皮书、一场人机共译比赛投射出怎样的未来?

脑极体

百度 AI 翻译

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