红帽白皮书新鲜出炉!点击获取,让你的云战略更胜一筹! 了解详情
写点什么

使用 DTrace 改善 Rails 性能

  • 2007-05-15
  • 本文字数:734 字

    阅读完需:约 2 分钟

最近有三家公司一同协作,使用强大的开源进程内部观察工具 DTrace 来查找并修复 Rails 的一个重大延迟问题。

来自 Joyent Twitter 的团队,以及来自 Sun 的 DTrace 开发人员 Bryan Cantrill 一起通力协作,花费了一天时间详细研究了 Ruby 进程在 Rails 产品环境中的行为。这次合作的目的是为了使用这个动态跟踪框架来修正 Twitter 发现的一个延迟问题。DTrace 是开源项目 OpenSolaris 的一个组件,用于进程的鉴定分析,因此它用于检查和监视运行 Rails 应用的 Ruby 进程是再合适不过的了。

联合团队在他们的分析发现,在 Rails 中抛出和捕捉某个系列的异常会消耗大量的 CPU 时间,用于生成几百个帧长的异常回溯报告。探测和移除了这些异常以后,Rails 请求 / 响应周期的某些特定类出现的延迟现象得到了很大程度的改善。

Joyent 的 CTO 和联合创始人 Jason Hoffman 就 DTrace 所带来的好处表示

我们一直在使用 DTrace 来查明我们客户和我们自己的应用程序中性能问题。

尽管如此,他相信仍有改进空间,DTrace 提供的对 Ruby 进程的内部观察的级别仍然不够深。针对 Ruby 1.8.5 和 1.8.6 版的补丁目前正在开发之中,将为 DTrace 提供对 Ruby 内部更强大的窥探能力。Jason 也相信我们将通过 DTrace 了解到 更多关于 Rails 产品环境和 Ruby 进程的深入信息。随着向 FreeBSD 进行移植的开发工作和向 OS X Leopard 移植计划的开展,DTrace 将不再只是 Solaris 用户手中的玩物了。

有趣的是,这不仅仅是一个开源工具用于改善开源框架的成功故事,它同样也是开源软件开发过程的一个成功故事。在 Ticket 被提交之后的 11 个小时内,Rails 的创始人 David Heinemeier Hansson 就接纳了这个 Ticket,并将其加入 Rails 的最新版本之中,使之可以立即使用。

查看英文原文: Using DTrace to Improve Rails Performance

2007-05-15 19:00715
用户头像

发布了 117 篇内容, 共 14.7 次阅读, 收获喜欢 0 次。

关注

评论

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

我干嘛要去学Python???!!!

代码生成器研究

软件测试/人工智能|一文教你如何配置自己的AutoGPT

霍格沃兹测试开发学社

如何系统、科学地自学编程知识?

代码生成器研究

百度大模型安全解决方案获WitAwards 2023 年度大奖

百度安全

安全 大模型安全

SQL 通配符:用于模糊搜索和匹配的 SQL 关键技巧

小万哥

MySQL 数据库 程序员 sql 后端开发

核药供应链创新:远大医药策略与明道云实践

明道云

LED驱动控制专用电路

攻城狮Wayne

E往无前 | 海量数据ES 扩展难?腾讯云大数据ES 扩展百万级分片也“So Easy~”

腾讯云大数据

ES

只需3分钟!组织架构图如何简单快速制作

Geek_09ea8e

组织架构图

3D建模软件Rhino 8 for Mac(犀牛)

展初云

Mac 建模软件 Rhino 8 犀牛

铭文聚合交易平台 Scorpio:铭文赛道狂潮的新引领者

股市老人

为什么 Mac 适合编程?

代码生成器研究

超级应用平台(HAP)起航

明道云

登陆 Azure、发布新版本……Zilliz 昨夜今晨发生了什么?

Zilliz

azure Milvus Zilliz zillizcloud

喜讯!云起无垠成为国家信息安全漏洞库(CNNVD)技术支撑单位

云起无垠

为什么chatGPT中文版不需要梯子🪜翻墙,在中国是合法合规的??

Geek_ccdd7f

GPT-4 API全面开放使用

Geek_ccdd7f

Sensei for Mac(系统优化工具)

展初云

Mac Mac软件 系统优化工具

软件测试/人工智能|教你如何使用ChatGPT的API

霍格沃兹测试开发学社

淘宝商品详情API接口文档(API SDK)

tbapi

淘宝商品详情数据接口 淘宝API接口 淘宝商品详情页面数据 淘宝商品详情数据采集方法 天猫数据接口

Puppeteer是什么?如何使用Puppeteer实现浏览器自动化

爱写字的阿城

自动化 批量 puppeteer

一文搞懂Go gRPC服务Handler单元测试

Tony Bai

Go golang gRPC 单元测试 微服务、

花见Live Wallpaper 4K Pro for mac(4k视频壁纸)

展初云

Mac 动态壁纸软件 Mac视频壁纸

软件测试/人工智能|AutoGPT原理与架构介绍

霍格沃兹测试开发学社

12 月 3 日北京,时序数据管理前沿技术+行业应用尽在 IoTDB 用户大会!

Apache IoTDB

PolarDB 物理复制刷脏约束问题和解决

ba0tiao

innodb MySQL 数据库 polarDB

全链协同,链接未来|端点科技联合IDC重磅发布新一代ERP白皮书

科技热闻

智能汽车的山海之盾

脑极体

智能汽车

2023年datafun随手记(1)

Hua

大数据 AI GPT LLM

跃见书单 | 一文带你读懂《人工智能简史》

码上跃见

AIGC #人工智能

拼多多商品详情数据接口应用在哪些场景?

tbapi

拼多多 拼多多商品详情接口 拼多多API接口

使用DTrace改善Rails性能_Ruby_Sam Aaron_InfoQ精选文章