目前,我有一个使用getInitialProps的SSR的Next应用程序,基于应用程序的复杂性,它需要太长时间来交付HTML(我在Chrome的网络选项卡中获得了很高的Waiting for Server
响应时间)。
我想弄清楚是什么增加了这么多时间(有时我得到秒),所以我试图:F
1.找出服务器从收到页面的GET请求到发送HTML需要多少时间
1.清楚地了解SSR期间发生了什么以及需要多长时间。因为现在对我来说是个黑盒子。
我尝试了一些改进建议:代码拆分、延迟加载组件、代码改进等。
我尝试使用Server Timing API来度量getInitialProps中执行的请求,以缩小流程的一部分。但是它对呈现过程和其他可能增加响应时间的Next过程没有帮助。
我尝试使用NODE_OPTIONS='--inspect' next dev
为Chrome使用Node.js分析器。这是我最接近我想要的,但我不能告诉服务器在哪里响应,以及每个Activity对应于什么。一些文档可能会有所帮助。
我试过中间件。不知道我是不是搞错了,但我无法测量从开始到结束的时间。
一些观察结果是,其他更简单的页面,有更快的响应时间,但不管它所花费的时间是非常长的(1 - 2个数量级)
1条答案
按热度按时间9nvpjoqh1#
在React中,我们使用renderToString()方法来处理,但Nextjs自己做了。