写点什么

Wee:基于 Continuation 的 Ruby Web 框架

  • 2009-03-28
  • 本文字数:669 字

    阅读完需:约 2 分钟

Wee(Web Engineering Easy 的简称)是一个类似 Seaside 的 Web 框架,它使用 Continuation,这使得开发者可以“轻松漂亮地完成任务”,Wee 的作者 Michael Neumann 如此形容到。Wee 也提供可复用组件,这种组件“和GUI 中的Widgets 类似,开发一次,就可以随处使用”,它的目标是让HTML 的GUI 应用可以组建化,而不是让其REST 化。即将发布的2.0 版本也将完全基于Rack。

Neumann 在一篇关于 Wee 的博文中示例说明了使用 Continuation 的代码在可读性上有多么明显的优势。使用 Continuation,简单的序列流就可以写成这样:

复制代码
callcc page1
callcc page2
callcc page3

还有另一种连续传递风格(Continuation Passing Style)的写法:

复制代码
call page1 do
call page2 do
call page3
end
end

如果 Continuation 这么有用,那为什么不是所有框架都采用 Continuation 呢?没有出现更多基于 Continuation 的 Ruby Web 框架,其中一个原因就在于:Ruby 1.8 存在内存泄露。虽然 Brent Roman 的 MBARI 补丁已经修复了这个问题,但是还没有引入到官方的 Ruby 1.8 中(一旦 Engine Yard 开始接管 Ruby 的维护工作,应该就会引入这个补丁)。Ruby 1.9.1b 不再存在内存泄露的问题,Wee 也得益于这一点

Ruby 1.9.1 中 10000 个请求(1 个线程中)需要花费 16 秒,内存占用为 12MB,而同样的请求在 Ruby 1.8.7 中会占用多达 329MB 的内存,时间上也长达 56 秒。

看来 Wee 是人们选择升级到 Ruby 1.9 的一个有力理由,而由于 Merb 也将合并到 Rails 3.0 之中,所以 Wee 很可能成为取代 Rails 的最佳选择。

查看英文原文: Wee: Continuation Based Ruby Web Framework

2009-03-28 21:374291
用户头像

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

关注

评论

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

YashanDB对现代企业数字化转型的关键推动作用

数据库砖家

YashanDB多语言支持及跨平台应用能力分析

数据库砖家

YashanDB多租户架构设计及其企业价值

数据库砖家

YashanDB高性能索引结构及优化策略探讨

数据库砖家

深度解析:超融合环境下的数据管理与存储关键技术

智驱前线

2025开源能源管理系统标杆:MyEMS 特性解析、社区生态与全场景落地实践

开源能源管理系统

开源 能源管理系统

AI4E:AI 重塑工业软件

俞凡

人工智能

【2025/11】GitHub 本月热度前十开源 Java 项目

JEECG低代码

中国汽研联合促进会启动"质量向新"行动 智能底盘系列标准研究正式启动

科技经济

MyEMS:锚定双碳目标,赋能企业能源数字化管理的核心引擎

开源能源管理系统

开源 开源能源管理系统

CAD高版本如何转为低版本?

在路上

cad cad看图 CAD看图王

YashanDB多节点协作机制及其优势分析

数据库砖家

YashanDB分布式存储架构的设计精髓解读

数据库砖家

YashanDB复杂查询性能提升的核心方法解析

数据库砖家

如何将PDF图纸转为CAD?用什么工具比较好?

在路上

CAD看图王

TencentOS Server V4率先适配机密计算技术CSV3,打造金融级安全基石

极客天地

海外营销冷启动指南:从0到1000名种子用户的完整路径图

Wolink

跨境电商 海外社媒营销 海外营销推广 品牌出海 海外红人营销

YashanDB多维数据模型设计及应用场景解析

数据库砖家

YashanDB高并发处理能力的设计思路

数据库砖家

YashanDB高并发处理能力及性能优化全攻略

数据库砖家

现代海外社交媒体分析平台必备的5大AI驱动洞察功能

沃观Wovision

社交媒体 海外社交媒体监控 社交媒体监测 社媒分析

国产化开源能源管理系统:MyEMS 的优势

开源能源管理系统

开源 开源能源管理系统

YashanDB分布式系统中的负载均衡设计详解

数据库砖家

YashanDB高效数据管理的5大实用技巧

数据库砖家

团队架构的月之暗面

俞凡

团队管理

用了一个月 ToDesk:聊聊这款远程控制工具的真实体验

Toekn_w

71 种语言 + 125 种口音识别!AI 精准翻译背后的数据力量!

数据堂

人工智能 语音识别 有道翻译 平行语料 发音词典

YashanDB分布式事务处理的应用场景与挑战

数据库砖家

YashanDB高可用架构设计关键要素详解

数据库砖家

智能时代,李冰用SSD修筑“AI都江堰”?

白洞计划

AI

Wee:基于Continuation的Ruby Web框架_Ruby_Mirko Stocker_InfoQ精选文章