写点什么

Merb 1.0 即将发布,RC1 现已可用

  • 2008-10-19
  • 本文字数:1858 字

    阅读完需:约 6 分钟

Merb 1.0 的 RC1 版本现在已经提供给开发者使用了。如其网站所述,这个工具提供一个小巧但是功能强大的内核,当要扩展这个内核的时候,开发者可以开发各种插件,而不是试图在内核中生成一个能够做所有事情的巨大的库。

InfoQ 对 Merb 的维护者 Yehuda Katz 进行了采访,在采访中,他勾勒出了 Merb 的一个大致景象:

我们关注 Merb 的一个主要因素就是它提供了一个庞大的核心特性集合,但是只提供了很少的 Assumption 机制。另外,我们添加了一系列能够被细粒度删除的缺省特性。我们花了大量的时间确保这些缺省特性不会造成混乱,而且能够在当你需做和内置的不同的 Assumption 的时候,很容易被删除掉。 这个因素使得采取新的技术或者范型(例如云计算,JavaScript 技术的变更,Ruby 数据库支持的改善等)更加的容易。

以我们的观点来看,Merb 和 Rails 的最大的不同之处在于选择整合进入缺省包的特性的时候,因为 Merb 提供了高粒度的选择,所以只需要做一些很少的操作,而 Rails 需要做出相当多的选择操作。Merb 的栈就像是用乐高积木搭起来的,而 Rails 的栈则像是用 Duplo 积木一样(如果你需要选择一个比较大的 Assumption 机制是否进入缺省包,因为 Rails 的细粒度选择,那么你会需要作出相当多的选择操作)。

如上所述,Merb 在配置会话方面与 Rails 的想法是完全一样的。我们希望那些使用 Merb 的开发者能够在一些固有并且相似的 Assumption 机制集合的帮助下大幅度地缩短从启动到部署上线运行的开发周期。

在架构之间转换通常会很花时间和精力,所以我们希望知道 Merb 怎样帮助一个 Rails 开发者完成迁移:

好消息是在 Merb 下,你仍然能够使用你的 ActiveRecord 模型,而且控制器和视图因为和 Rails 足够相似,所以很容易地修改。也就是说,在 Merb 和 Rails 之间仅仅存在一些句法和概念上的差别,在月末发布最终的 1.0 版的时候,我们应该已经在 Merb Wiki 上列出来了这些差别。

这里有两本将要出版的关于 Merb 的书:

我现在为 Manning 出版社的 Merb 专题写一本书,作为他们 MEAP 项目的一部分,这本书马上就要付梓了。 Foy Savas 也在为 Addison Wesley 出版社写一本关于 Merb 的书。

InfoQ 一月份的采访中,“集中插件站”曾经被提及过,现在情况如何?

1.0 版与开发 Merb 项目有关的部分包含了相当一部分通用插件,例如认证,缓存,异常通知,这些插件都是一流的。当然,某些情况下,我们也许会需要重新地访问集中的插件库以获得改良的插件。

Yehuda 最近写了一篇关于改良 Merb 服务器的博文,所以我们希望他能够精心地为我们介绍一下:

Merb 和 Rails 都有能够快速启动和管理页面的机制。在 Rails 中,这个机制是脚本 / 服务器。而在 Merb 中则是 merb 命令。在 1。0 版本中,我们大量地改进了 merb 的 server 版本,添加了 0.9 版中缺少的大量重要的特性。 例如:

  • 启动一个 Merb 服务器簇实例与已经被使用的端口进行绑定不会造成 Merb 崩溃。相反地,Merb 会提示端口被占用然后一直等待直到端口可用。这个特性允许这样的部署解决方案:(1)在服务器中加入新的代码。(2)启动新的 merb 服务器簇。(3)优雅地杀掉旧的服务器簇。
  • 如果没有添加额外的特性或者修改 init.rb,即使是在工作时间,Merb 服务器也将会快速,简易并且安全地重新载入你的代码。在目录中运行“merb --fast-redeploy”命令,所有的代码都会重新载入。
  • 如果一个 merb 工作进程被杀掉(即使是被 kill -9 命令给杀掉的),它会在很短的时间内重新启动。这个特性允许你能够没有任何顾虑地杀掉臃肿的进程而不用担心服务器罢工。

在未来的日子里,我们将会深度改进 merb 部署解决方案。

现在 1.0 将要出来了,那么对于 Merb2 有什么计划吗?

我们计划在下一年的时候发布若干个 1.x 的版本,在 1.x 版本中添加的新特性将会包含在 2.0 里面。当然我们不会释放一个包含所有新特性的臃肿的 2.0 版本,我们会本着敏捷开发的精神,增量地开发 1.x 版本,使开发者能够在 1.x 版本中熟悉 2.0 的特性。 Merb 2.0 的一个振奋人心的消息便是将会改进对快速原型的支持,并且从 Python 社区和其他编程语言吸取精华来持续改进构架,使得开发者能够利用 Merb 迅速开发和部署程序。我们计划提供更深层次与 JavaScript 的集成,以使得能够尽可能方便地安装诸如 jQuery 等库以及其相关的插件,CSS 和图片。

我们也计划深度改善 Merb 服务器,优化 Merb 应用的内存使用,减少 merb 进程簇的总开销,并且可能实现运行中 merb 进程簇的自由伸缩。

Merb 1.0 将会在几个星期内发布,它的网站有安装说明

查看英文原文: Merb 1.0 Coming Soon, RC1 Available Now

2008-10-19 23:32904
用户头像

发布了 90 篇内容, 共 34.1 次阅读, 收获喜欢 5 次。

关注

评论

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

与 Perses 深度集成,重构 GreptimeCloud 可视化工作台

Greptime 格睿科技

可视化 时序数据库 perses

探索设计稿自动生成Flutter代码的技术方案

京东科技开发者

Media Encoder 2025 for Mac(me2025中文版)

Mac相关知识分享

Studio One 6 for mac注册机 Studio One 6激活安装包 支持M1/M2

Rose

如何选择文档版本管理系统?推荐8款常用工具

爱吃小舅的鱼

程序员 文档管理 文档管理软件

评论系统设计思路

江南一点雨

软件开发中的技术债务:应对挑战的技巧

爱吃小舅的鱼

程序员

【EMNLP2024】基于多轮课程学习的大语言模型蒸馏算法 TAPIR

阿里云大数据AI技术

人工智能 nlp 论文 PAI EMNLP

A Better Finder Attributes 7 for Mac文件批量重命名工具

Mac相关知识分享

Steinberg Cubase Pro 14 for Mac(多功能音乐制作软件)

Mac相关知识分享

KWDB 亮相 COSCon′24 第九届中国开源年会

KaiwuDB

数据库 开源 kaiwudb开源

适合局域网的项目管控工具有哪些?9款对比

爱吃小舅的鱼

项目管控软件

预算超支的对策:掌握软件项目成本管理

爱吃小舅的鱼

程序员 预算管理 成本控制

图片批量处理软件XnConvert for Mac(图像格式转换软件)

Mac相关知识分享

DaVinci Resolve v19.0.3激活版 达芬奇mac版安装教程

Rose

亚马逊商品API接口:运用及收益的深度探讨

科普小能手

API 接口 API 测试 亚马逊API 亚马逊商品详情API 亚马逊API接口

Agisoft Metashape中文版 三维建模重建软件

Rose

SQL Server 数据太多如何优化

威哥爱编程

数据库 sql SqlServer

测试人生 | 90后斩获多家名企offer的小哥哥,做对了什么?

测试人

软件测试

变更管理的关键策略:确保软件项目成功

爱吃小舅的鱼

变更管理

Screaming Frog SEO Spider:网站爬虫及SEO审计工具

Rose

Spring事务实现原理

京东科技开发者

编程爱好者的福音:实用技巧与教程

天津汇柏科技有限公司

代码 #编程

项目管理工具评测:如何选择最适合的工具

爱吃小舅的鱼

项目管理工具

深入了解堡垒机的四个作用-行云软件

行云管家

网络安全 数据安全 堡垒机 企业安全

行云堡垒V7.5新特性

行云管家

网络安全 堡垒机

EndNote 21授权密钥2024最新 附EndNote 21详细图文安装教程

Rose

开源分析和落地方案—Sentinel篇

京东科技开发者

焕然一新!TinyVue 组件库 UI 大升级,更符合现代的审美!

OpenTiny社区

Vue 前端 组件库 OpenTiny TinyVue

PhoneRescue for iOS for Mac苹果设备数据恢复软件

Mac相关知识分享

Dual-Band WiFi Excellence with Wallystech’s QCN9274, QCN6274, QCN9224, QCN6224, and MT7915 Network Cards

wallyslilly

qcn9274

Merb 1.0即将发布,RC1现已可用_Ruby_Mirko Stocker_InfoQ精选文章