我正在开发网络应用程序(基于 Rails 3)。我真的不喜欢生成页面所需的时间 - 根据显示的数据,它需要长达 2.5 秒甚至 4 秒。
所以我只是想知道在应用程序中生成页面的平均合理时间是多少。假设您检查生成时间,例如这是 750 毫秒,然后想“好吧,即使没有缓存也应该没问题”。或者当您看到 1.5 秒时,您会想“天哪,用户不会等这么久并离开网站”
关于从查询到渲染的时间以及用户体验,有大量的研究数据。我建议阅读这篇 useit.com 文章 http://www.useit.com/alertbox/response-times.html。毕竟,谷歌在其结果中整合页面速度是有原因的;)
3 个响应时间限制是
今天和我写关于他们的时候一样
1993 年(基于 40 年前的研究
由人为因素先驱者提出):
- 0.1秒给人一种瞬间反应的感觉——即
结果感觉像是由
用户,而不是计算机。这个级别
响应能力至关重要
支持直接的感觉
操纵(直接操纵是
关键的 GUI 技术之一
提高用户参与度和控制力 —
有关更多信息,请参阅我们的原则
界面设计研讨会)。
- 1秒让用户的思维流畅。用户可以感受到
延迟,从而知道计算机是
产生结果,但他们仍然
感觉掌控全局
经验和他们正在移动
自由地而不是等待
电脑。这个程度的
良好的响应能力是必要的
导航。
- 10 秒保持用户的注意力。从 1 到 10 秒,用户
绝对感受到了
计算机并希望它更快,但是
他们可以处理它。 10秒后,
他们开始考虑其他
的东西,使其更难获得
一旦电脑恢复正常,大脑就会回到正轨
终于回应了。
10秒的延迟往往会导致
用户立即离开网站。和
即使他们留下来,也更难
让他们了解正在发生的事情
使他们不太可能
成功完成任何困难的任务。
根据经验,您应该始终以优化时间与获得的时间之间的平衡为目标。当你的图像没有正确压缩,或者你的脚本/CSS 没有组合时,不要花几天时间优化一个例程。是的,越快越好,但是通过设置智能缓存生成页面的效率提高了 90%,而调整算法一周后生成页面的效率提高了 10%。
当框架必须加载所有内容时,也不要过多关注首次渲染时间,而是使用压力测试(无论是否缓存)来模拟各种情况。
现在,一些数据;我工作的一些最新网站使用了 DotNetNuke(一个巨大的开源 CMS)和 Asp.Net MVC,让您更接近金属。 DotNetNuke 的平均数据库查询平均页面时间为 600-700 毫秒。对于 Asp.net MVC,它是 70-100 毫秒...用户真的很喜欢第二个:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)