服务器端渲染:乐趣与收益并存
1. 性能提升
客户端应用程序通常速度快且响应灵敏,深受大家喜爱。然而,存在一个问题:在用户能够对应用程序采取任何操作之前,必须先加载并运行捆绑包。
在高速网络连接的现代笔记本电脑或台式计算机上,这可能不是问题。但如果使用 3G 网络的移动设备加载庞大的 JavaScript 捆绑包,用户在与应用程序交互之前需要等待一段时间。这不仅总体上对用户体验不利,还会影响转化率。主要的电子商务网站已经证明,页面加载时间增加几毫秒可能会对收入产生巨大影响。
例如,如果我们在服务器上使用空 HTML 页面和脚本标签提供应用程序,并在用户能够点击任何内容之前向他们显示加载指示器,那么用户对网站速度的感知会受到显著影响。
如果我们改为在服务器端渲染网站,用户一访问页面就能看到一些内容,即使他们在真正进行操作之前仍需等待相同的时间(因为无论是否使用服务器端渲染,客户端捆绑包都必须加载),他们也更有可能停留。
通过服务器端渲染(SSR),我们可以显著提高这种感知性能,因为我们可以在服务器上输出组件,并立即向用户返回一些信息。
2. 不要低估复杂性
尽管 React 提供了在服务器上渲染组件的简单 API,但创建通用应用程序是有成本的。因此,出于前面提到的原因,我们在启用它之前应该仔细考虑,并检查我们的团队是否准备好支持和维护通用应用程序。
创建服务器端渲染应用程序不仅仅是渲染组件。我们必须设置和维护一个带有路由和逻辑的服务器,管理服务器数据流等等。为了更快地提供页面,我们可能还需要缓存内容,并执行许多其他维护全功能通用应用程序所需的任务。
建议先构建
超级会员免费看
订阅专栏 解锁全文
2247

被折叠的 条评论
为什么被折叠?



