什么被认为是一个dynamic的,个性化的Web应用程序的良好响应时间?
对于包含dynamic内容和个性化的复杂Web应用程序,服务器的响应时间是多less(这样排除networking延迟和浏览器渲染时间)? 我正在考虑像Facebook,亚马逊,MyYahoo等网站。一个相关的问题是什么是一个良好的后端服务响应时间?
对此有大量的研究。 这是一个简短的总结 。
回应时间:3个重要限制
由雅各布尼尔森 1993年1月1日
总结:在优化Web和应用程序性能时,要记住3个主要时间限制(由人类感知能力决定)。
摘自我的书“ 可用性工程”第5章,从1993年开始:
有关响应时间的基本build议大致相同的三十年(米勒1968年; Card等人 1991]:
- 0.1秒是关于让用户感觉系统正在瞬间反应的限制,意味着除了显示结果之外不需要任何特殊的反馈。
- 即使用户会注意到延迟, 1.0秒是关于用户stream畅思考保持不间断的限制。 正常情况下,在延迟时间不超过0.1秒但不足1.0秒的情况下,不需要特别的反馈,但是用户确实会丧失直接操作数据的感觉。
- 10秒左右的时间是关于保持用户注意力集中在对话上的限制。 对于较长时间的延迟,用户在等待计算机完成时需要执行其他任务,因此应该给出反馈,指示计算机何时完成。 如果响应时间可能高度变化,则在延迟期间的反馈尤其重要,因为用户将不知道该期待什么。
我一直在为我的应用程序争取<3秒,但在性能方面我有点挑剔。
如果你四处打听,他们会说人们开始对大于等于7秒的范围失去兴趣,在10-15秒内你通常会失去它们,除非你真的有他们想要或者需要的东西。
我们争取20毫秒的响应时间,而一些复杂的页面需要100毫秒。 对于最复杂的页面,我们将页面分解成更小的部分,并使用逐行显示模式来加载每个部分。 这样,即使页面加载1到2秒,某些部分的加载速度也很快,从而在加载页面的其他部分时保持用户参与。
我们公司有5秒的响应时间标准限制,我们的目标一般为2-3秒。 这占页面加载的98%。 一些特定的任务可以达到15秒,但是我们通过build立一个页面并每5秒刷新一次,告诉用户我们仍然在处理请求。 用户看到这样的事情正在发生,而不是离开。 尽pipe考虑到我在一个网站上工作的用户因为商业原因被迫使用,他们不会离开,但是他们可以大声抱怨。
一般来说,如果处理过程需要5秒钟以上的时间,build立一个临时页面,使用户不会失去兴趣。
当然,它是根据你的问题的性质,所以答案是非常主观的。
网页的第一个响应也只是一小部分时间,直到页面可读/可用。
我对所有超过10秒的回应感到恼火。 我认为一个网站应该在5-7秒后呈现。
顺便说一句:stackoverflow.com有一个很好的响应时间!
这取决于什么让你的用户快乐。 例如,Gmail首先需要很长时间才能打开,但用户因为值得等待而等待。
这不仅取决于让用户满意的方式,而且还有多less开发时间? 你可以抛出什么样的资源(软件,硬件和人)?
如果他们正在做一些“复杂的事情”,我不介意在托pipe应用程序上再拖延几秒钟。 如果真的很简单,延迟打扰我。
我想你会发现,如果你的networking应用程序执行一个复杂的操作,然后提供给用户的反馈,他们不会介意(太多)。
例如:加载Google Mail。
2到3秒