会尝试在任何真实的用户监控
如果我这样做,我可能会专注于我的应用程序的细节。所以,假设我的应用程序是一些文本编辑器。那么对我来说真正重要的是输入延迟,很少有用户指标对我来说真正重要。按键后文本呈现的速度越快,性能就越好。也许还有一些其他指标,例如在不同菜单之间切换或应用粗体或斜体等格式。伊万·阿库洛夫:在这种情况下,我会尝试测量每个交互的持续时间。我会尝试测量输入延迟、按下按键之间的渲染持续时间以及按键出现在屏幕上的持续时间(例如应用粗体样式)等。我软件中收集这些指标,我会通过它来判断我是快还是慢,或者我是变快了还是变慢了。
德鲁·麦克莱伦:是否更多的是衡量用户可能与之交互的事物,而不是查 电报号码数据 看页面并说出该页面的速度有多快,因为当您拥有更多交互界面时,这实际上没有任何意义?
伊万·阿库洛夫:是的,完全正确。我多次听说,对于某些复杂的应用程序,登录时间实际上并不是一个问题,因为用户习惯了……当您打开 Photoshop 时,您对该 Photoshop 的使用需要一段时间才能加载。您已经习惯了看到加载占位符。当你打开谷歌时,这绝对不是问题……谷歌表格不是正确的例子,而是任何网络绘图软件。同样,加载需要一段时间,没关系。只要此后它实际上能很快发挥作用就可以了。如果加载需要一段时间,但之后很快就能运行,那么用户实际上不会抱怨,因为他们已经习惯了这种行为。
德鲁·麦克莱伦:您在打字时提到了输入延迟。我看到了你的推文风暴,其中你谈到了组件的主题,这些组件似乎反应太慢,比如在文本字段中输入,字母需要一些时间才能出现。这显然是一个性能问题,因为在常规网页上,在文本字段中输入是即时的。那么,是什么导致了这些放缓呢?
伊万·阿库洛夫:就像一般的正确性能一样,有很多因素可能导致这种情况。当您在文本字段中输入内容并且需要一段时间才能呈现您刚刚按下的键时,通常会发生的情况是,您在处理该事件时运行了过多的 JavaScript。造成这种情况的原因可能有多种。您可能渲染了太多组件。也许您正在按下该键,这会将文本输入状态保存在 Redux 存储中。这让我们可以渲染整个应用程序,因为我知道这会使 Redux 存储的很大一部分失效。
伊万·阿库洛夫:或者您可能正在依次安排一些渲染。或者也许有一些第三方库需要一段时间才能重新计算某些内容。确实,没有唯一的答案。事实上,渲染性能对我来说确实是一个挑战。我觉得这部分总体来说。
http://zh-cn.lobdirectory.com/wp-content/uploads/2024/01/images.jpg
伊万·阿库洛夫:加载性能更容易分析、更容易分析、更容易测量。我认为我们实际上看到了它的效果,并且有更多关于加载性能的内容,更多用于加载性能的工具。它更容易测量和分析,因为它对于每个应用程序几乎都是相同的。无论什么应用程序,无论它是用什么编写的,无论它执行什么样的操作,它们的加载方式都或多或少相同。无论应用是什么,你总是可以专注于同样的事情,你可以教人们同样的事情,那就没问题了。
伊万·阿库洛夫:然而,就运行时性能而言,每个应用程序的减速细节和特定的提供时间挑战都非常不同。它们可以针对一些基本的东西进行优化,但是很难在更高的层面上讨论它们,因为对于每个应用程序来说,它们都是不同的。
伊万·阿库洛夫:实际上,我希望他们用我正在做的版本解决的挑战之一是对运行时性能进行某种足够高水平的介绍,以便参加本次研讨会的人们可以了解到它可以将其应用到他们的应用程序中具体的挑战及其具体的业务逻辑。
頁:
[1]