写点什么

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:373818
用户头像

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

关注

评论

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

二、面向云原生环境的安全体系

穿过生命散发芬芳

云原生安全 5月月更

架构实战训练营毕业总结

石小天

SpringBoot之:SpringBoot的HATEOAS基础

程序那些事

Java Spring Boot 程序那些事 5月月更

架构实战营 - 电商秒杀系统

邹玉麒

场景创新方法论

石云升

产品创新 5月月更 场景创新

架构实战营毕业项目

哈啰–J

毕业总结

Fingal

架构实战营

作业十

Geek_f3e842

架构实战营

电商秒杀系统架构设计

五月雨

架构实战营 「架构实战营」

ConcurrentHashMap

急需上岸的小谢

5月月更

C++最佳实践 | 7. 正确性和脚本

俞凡

c++ 最佳实践

前端食堂技术周刊第 37 期:Google I/O 2022、TS4.7 RC、WinterCG、Lerna 复活、GitHub 项目精选、State of C

童欧巴

JavaScript typescript GitHub 前端 Google

总结

Geek_f3e842

架构实战营

云原生训练营 - Week12

jjn0703

云原生训练营

架构营毕业总结

Geek_28cf33

API 工程化分享

郑子铭

golang protobuf Cloud Native

架构训练营总结

邹玉麒

「架构实战营」

[架构7期] - 模块一练习

极客土豆

Flutter & Dart:如何检查字符串是否为空

坚果

5月月更

[数据分析实践]-音频分析-BirdCLE-3

浩波的笔记

人工智能 技术分析

C语言_文件IO操作函数总结

DS小龙哥

5月月更

基础设施即代码:你需要知道的一切

禅道项目管理

DevOps 基础设施 基础设施即代码

为 SaaS 企业提供 SaaS 服务

Authing

Kubernetes 中数据包的生命周期 -- 第 4 部分

Se7en

JS基本语法学习

恒山其若陋兮

5月月更

架构实战营毕业总结

五月雨

架构实战营 「架构实战营」

【刷题第九天】20. 有效的括号

白日梦

5月月更

毕业设计项目:设计电商秒杀系统

炎彬

「架构实战营」

javaAOP

工程师日月

java 并发 5月月更

架构实战营毕业总结

哈啰–J

毕业总结

「架构实战营」

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