50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

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

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

关注

评论

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

优秀程序员的30种思维--分析总结篇(13/100)

hackstoic

架构思维

新年新知 | 2022必读的5篇行业趋势(内附下载)

LigaAI

AI 创新 行业趋势 新能源

Kubernetes应用,如何选择适合你的Kubernetes应用发布模式

阿里云云效

阿里云 Kubernetes 云原生 CI/CD 发布模式

哪个低代码平台上手度对小白更友好?专业测评来了!

优秀

低代码 应用开发

产品经理沟通技巧

史前靓仔

职场 产品经理 沟通技巧

英特尔CEO:开启超级摩尔定律的时代,推动前沿进展

科技新消息

低代码如何解锁制造业数字生态系统?

TOBESOFT特碧软件

低代码 数字化 TOBESOFT

网络安全kali渗透学习 web渗透入门 WireShark抓包及常用协议分析

学神来啦

一周信创舆情观察(2.7~2.13)

统小信uos

musl堆利用技巧,你知道多少

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

如何构建一个流量无损的在线应用架构 | 专题中篇

阿里巴巴中间件

阿里云 云原生 中间件

如何构建一个流量无损的在线应用架构 | 专题尾篇

阿里巴巴中间件

阿里云 云原生 中间件 EDAS

DG-IoT: 开源项目职业教育助力解决过度补课难题

dgiot

物联网 2月月更 2月日更 dgiot dgiot物联网

知名信息安全厂商渔翁信息加入龙蜥社区,共建开源生态

OpenAnolis小助手

Linux 开源 信息安全

云原生多云应用利器--Karmada 总览篇

Daocloud 道客

云原生 多云管理 Karmada

DevOps进阶(四):Jenkins 实战之构建定时项目与远程触发器

No Silver Bullet

DevOps jenkins 定时器 2月月更 触发器

消除if-else之为Enum添加行为实现策略模式

topsion

Java clean code

CTF中PHP相关题目考点总结(二)

H

网络安全 CTF

MASA Framework - DDD设计(1)

MASA技术团队

C# .net 微软 框架 Framework

Java线程池必知必会

CRMEB

Web_Components 系列(九)—— Shadow Host 的 CSS 选择器

编程三昧

前端 组件化 2月月更 WebComponent

手把手带你基于嵌入式Linux移植samba服务

华为云开发者联盟

Linux 嵌入式 Samba UNIX系统 SMB协议

教你用Elastic Search:运行第一条Hello World搜索命令 原创

华为云开发者联盟

数据库 全文检索 索引 Elastic Search 分布式实时搜索引擎

白盒绕过、黑盒绕过——绕过waf(一)

喀拉峻

网络安全

北京冬奥有哪些AI“黑科技”?

澳鹏Appen

人工智能 自动驾驶 计算机视觉 nlp 黑科技

G7完成2亿美元融资

极客天地

使用 Flink Hudi 构建流式数据湖平台

Apache Flink

大数据 flink 编程 数据湖 实时计算

「重磅消息」OpenMLDB 官方网站 正式上线!

第四范式开发者社区

机器学习 大数据 OpenMLDB

数据分析实际案例之:pandas在餐厅评分数据中的使用

程序那些事

Python 数据分析 pandas 程序那些事 2月月更

声网Agora Lipsync 技术揭秘:通过实时语音驱动人像模拟真人说话

声网

人工智能 音视频

极光笔记 | 极光推送业务无中断迁移上云实践

极光GPTBots-极光推送

企业上云 后端技术 上云

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