ruby-on-rails - 页面渲染速度提升

标签 ruby-on-rails performance frontend webpage-rendering

我们正在运行一个 web 服务,它正在努力解决一些相当高的页面渲染时间,尤其是 IE8(大约 20 秒)。我们非常擅长构建高性能后端系统,但不擅长优化前端。

目前看来(来自 newrelic)页面渲染和 dom 解析是最大的问题。

我们已经尝试优化 js 脚本,这有点帮助,但是页面在 IE8 中渲染速度仍然很慢,我觉得那里有一些低垂的果实。我的问题是,我真的不知道从哪里开始,什么会起作用,如果有一些我没有看到的红色小羊在闪烁。我需要有经验的眼睛。

任何人都可以帮助我朝着正确的方向前进(我对一切都持开放态度!)?

慢页面在这里:the slow page

附注。我们正在运行 Rails 3.2

最佳答案

  • 我建议你 通过上面的工具 分析你的网站(YSlow 也是一个很好的工具)
    或使用此在线工具 Pingdom 。在那里你会以一种非常简单的方式看到你的速度消失了。
  • Hooopo 的答案中的性能优化书籍 中有一个免费可用的 摘要(非常好!) Yahoo! Developer Network
  • “目前看来(来自 newrelic)页面渲染和 dom 解析是最大的问题。”因此,我建议您学习这本书:Nicholas C. Zakas 的 High Performance Javascript
  • 将尽可能多的 JS 放在页面底部以改进渐进式渲染。
  • 我有时会发现 CSS 选择器有点长(如果它是一个小站点并不重要,但在这种情况下..)。这会使您的页面呈现非常缓慢,尤其是在 IE 中。

  • 示例(来自您的网站):
    table.results_table td.car_details .content > .left { ... }
    

    尝试将这个大选择器分解为这个(如果可能的话):
    .car_details .content .left-child { ... }
    

    简而言之:优化您的 JS 性能并使您的 css 选择器尽可能小而简单。

    希望这可以帮助。

    关于ruby-on-rails - 页面渲染速度提升,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10851413/

    相关文章:

    ruby-on-rails - 默认的disable_with用于simple_form提交

    ruby-on-rails - 如何在 Ruby 中并行递归下载 FTP 文件夹?

    javascript - 如何在 zepto 中使用 requirejs

    performance - 为什么很难用 JIT 编译器击败 AOT 编译器(在应用程序性能方面)?

    python - 编译器 : How to parse function calls and function definitions

    javascript - react-router v4 中的 onEnter Prop

    ruby-on-rails - Rspec View 规范被 default_locale 破坏

    ruby-on-rails - Rails 缓存的默认到期时间是多少?

    mysql - SQL 内连接性能问题

    php - 如何检查/更新包含约百万行的数据库中的列?