QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Web 页面性能分析工具 YSlow 开源

  • 2012-02-16
  • 本文字数:761 字

    阅读完需:约 2 分钟

2 月 16 日,Yahoo! 的前端工程师 Marcel Duran 在 Yahoo! 研发团队官方博客发布消息: YSlow 开源

YSlow 是广为人知的 Web 页面性能分析、测试和调试工具,已经成为业界的事实标准之一。它的主要功能包括:

  • 基于三种预定义的规则集,或用户自定义的规则集,为页面打分
  • 为页面性能提升提供建议
  • 总结页面的组件情况
  • 展示页面统计信息
  • 提供性能分析工具,包括 Smush.it JSLint

YSlow 团队提出的“23 条 Web 性能最佳实践和规则”更是被奉为圭璧。

  1. 尽可能减少 HTTP 请求次数
  2. 使用 CDN
  3. 避免空 src 和 href 标签
  4. 加入 Expires 或 Cache-Control Header
  5. 使用 Gzip 压缩
  6. 在 html 文件顶部放置样式表
  7. 在 html 文件底部放置 JavaScript 脚本
  8. 避免使用 CSS 表达式
  9. 使用外部 JavaScript 和 CSS 外部文件
  10. 减少使用 DNS 查找次数
  11. 精简 JavaScript 和 CSS
  12. 避免重定向
  13. 移除重复的脚本
  14. 配置 ETag
  15. 缓存 AJAX
  16. 使用 GET 完成 AJAX 请求
  17. 减少 DOM 元素数量
  18. 避免 404
  19. 减少 Cookie 大小
  20. 使用无 Cookie 的域
  21. 避免使用滤镜
  22. 不要在 HTML 中缩放图片
  23. 使用小 favicon.ico 文件,并让其可缓存

在博客中,Marcel 这样写:

从 2007 年开始,YSlow 对公众免费发布。过去 5 年,Yahoo! 一直在维护其代码,并得到社区的鼓励,一直在改进。现在,我们在 BSD 开源协议下将 YSlow 代码开源。⋯⋯由于 YSlow 完全以 JavaScript、HTML 和 CSS 开发,大家很容易为其做出贡献。

YSlow 在 GitHub 上的最新开发版在 github.com/marcelduran/yslow

性能社区一直在通过 Exceptional Performance Yahoo! 讨论组做出间接贡献,提供有价值的反馈。现在,问题将会通过 GitHub 的公共问题跟踪系统处理,社区能够直接决定项目路线图。现在,你们可以来协助制定优先级、修复bug 并改进YSlow 了!请赶紧 fork 代码,开始贡献吧!

InfoQ 的读者们,你们对 YSlow 的开源怎么看?你们会去为其贡献代码吗?欢迎在评论中留下你们的想法!

2012-02-16 22:394011
用户头像

发布了 479 篇内容, 共 160.8 次阅读, 收获喜欢 50 次。

关注

评论

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

DM 中 relay log 性能优化实践丨TiDB 工具分享

PingCAP

脱颖而出!OceanBase 入选 2021“科创中国”开源创新榜单

OceanBase 数据库

数据库 分布式 OceanBase 开源 科创中国

2022年的SaaS行业,钱往哪里去?

ToB行业头条

云原生网络利器--Cilium 总览

Daocloud 道客

ebpf cilium 云原生网络 容器网络方案

数仓中长跳转问题复现及解决方案

华为云开发者联盟

寄存器 GaussDB(DWS) 长跳转 编译器O2

高性能图计算系统 Plato 在 Nebula Graph 中的实践

NebulaGraph

图数据库 图计算 分布式图数据库

混合云管平台排名您知道吗?看这里!

行云管家

混合云 云管

2022年数据库审计厂家就选行云管家!功能强大!

行云管家

数据库 网络安全 数据库审计

web前端培训:Vue3 调度系统的深度剖析

@零度

Vue 前端开发

Web 键盘输入法应用开发指南 (3) —— 输入法事件

天择

JavaScript 键盘 输入法 3月月更

上手体验!如何借助龙蜥实验室快速部署 Web 应用?

OpenAnolis小助手

开源 国产操作系统 web服务器

一文全面掌握大数据关联与汇聚

云智慧AIOps社区

redis Clickhouse flink sql 大数据开发

大数据培训:Spark高频面试题汇总

@零度

大数据 spark

微服务身份认证需求下的私钥托管痛点与破局

全象云低代码

微服务 低代码 身份认证 鉴权 密钥

《重构 JavaScript》读后感和部分摘录

道道里

前端 测试 重构

Camtasia Studio2022激活码序列号

茶色酒

Camtasia Studio2022

首发|Clusterpedia 0.1.0 四大重要功能

Daocloud 道客

开源项目 多云管理 K8s 多集群管理 多云资源复杂检索

会声会影2022脸部索引功能详解

懒得勤快

2022年1月娱乐直播行业用户洞察:行业格局稳定,内容运营精细化

易观分析

Tuxera2022mac读写硬盘U盘工具

茶色酒

Tuxera2022

智汇华云 | Kubernetes多集群管理方案kubefed原理解析

华云数据

云计算 华云数据 虚拟云

如何获取 Docker 容器的 IP 地址

AlwaysBeta

Docker 容器

【C语言】一篇速通操作符

謓泽

C语言 操作符 3月月更

《隐私计算》重磅发布,全面、系统论述数据要素安全流通价值

博文视点Broadview

从Nacos到完全自研|得物的注册中心演进之路

得物技术

架构 raft 注册中心 实例 兼容性测试

Kafka中指定副本为Leader的三种实现方式

石臻臻的杂货铺

kafka 运维

IOS技术分享| anyLive 开源项目

anyRTC开发者

ios 音视频 移动开发 视频直播 开源demo

java培训:MyBatis的架构与原理分析

@零度

mybatis JAVA开发

2022,你的团队距离持续部署还有多远?| 研发效能提升36计

阿里云云效

阿里云 云原生 持续部署 研发团队 研发

EMQ 正式成为 OASIS 最高级别成员,主导推进物联网协议标准化应用

EMQ映云科技

开源 物联网 ibm mqtt OASIS

始于信任 忠于专业|DataPipeline收到一封来自山东城商行联盟的感谢信

DataPipeline数见科技

Web页面性能分析工具YSlow开源_语言 & 开发_郑柯_InfoQ精选文章