为了账号安全,请及时绑定邮箱和手机立即绑定

对于用户交互性较高的网站,客户端渲染好还是服务器端渲染好?

对于用户交互性较高的网站,客户端渲染好还是服务器端渲染好?

SMILET 2023-10-17 17:51:45
我正在开发一个网站,用户登录其用户帐户,将数据输入到表中(我使用制表器),然后保存表中的数据(我使用 MongoDB Atlas 进行数据存储)。该网站具有不同的子页面,其中数据与存储在另一个子页面中的其他数据进行交互(例如该网站有“销售”和“库存”子页面,因此当用户进行新销售时,库存将减少销售额) )。基本上,它是一个用户不断对其数据执行 CRUD 操作的网站。今天该网站在客户端呈现。网站的每个子页面都有自己单独的 HTML 文件和单独的 Javascript 文件,并使用一个 Node 文件来处理所有子页面与 Atlas 的所有后端通信。我仅使用一两个不同的用户帐户在本地 PC 上使用和测试网页,一切都按原样运行良好(每个用户保存并使用自己的数据)。现在,考虑到我计划部署网站(到域或 Heroku),并可能获得数百或数千个不同的用户,我一直在研究以下选项:继续按照我一直使用的方式使用简单的客户端 HTML。将 HTML 呈现为来自 Node 的响应使用 Node 中的模板引擎考虑到可扩展性,您会推荐哪个选项?
查看完整描述

2 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

你的问题问得好,但它的答案几乎无法预测。将网络应用程序从少数用户增加到几千人总是会发现令人惊讶的性能瓶颈。

原始下行带宽是否会出现瓶颈?减少对 API 调用和页面请求的响应是否会带来巨大收益?这是可能的,但 Heroku 和其他优秀的主机供应商在带宽方面做得很好。另外,https 在加密数据时会压缩数据,因此重复的 html 并不像看起来那么昂贵。因此让你的服务器渲染大量的 html 可能是可以接受的。

应用程序-数据库接口是否会出现一些瓶颈?如果存在大量数据和复杂的过滤标准,这种情况很可能发生。每个成功的网络应用程序都需要对其数据库保持警惕。您将不得不添加索引或为您目前无法想象的问题开发不太优雅的解决方法。

摄取数据的进程和使用数据的进程之间是否会发生争用?大概。但争论的细节很难预测。

长话短说;博士。你有这个东西工作。现在没必要重做。部署你所拥有的。邀请您的用户并倾听他们的意见。注意它的性能,并将调整和重构集中在证明有必要的区域。


查看完整回答
反对 回复 2023-10-17
?
慕斯709654

TA贡献1840条经验 获得超5个赞

如果您更喜欢 React 框架,我建议您看看vue js 框架的nuxt js或next js 等项目。

AFAIK,它们结合了服务器端和客户端渲染的优点。

这两个框架用于构建具有各种有用特性的各种应用程序。

考虑到您的需求,通用应用程序功能和服务器端渲染可能会帮助您实现所需的可扩展性。


查看完整回答
反对 回复 2023-10-17
  • 2 回答
  • 0 关注
  • 62 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信