使用 JavaScript 框架的服务器端渲染:与已建立的后端技术相比有哪些优势?

Server-side rendering with JavaScript frameworks: What are the benefits over established backend-technologies?

最近 JavaScript 用于服务器端渲染的框架变得流行起来。例如 Next.js 和 Nuxt.js.

我想知道:这些框架是否比已建立的纯后端技术(Python Django、Ruby on Rails、PHP Laravel, ...)?

还是说只是为了用技术,前端有名,后端也有名?让您不必在不同语言之间切换。

Nuxt.js 等框架的主要优点是它们实现了 server-side 呈现 client-side 框架代码。 (在 Nuxt.js 的情况下,它是 Vue.js,但是对于 React 和 Angular [事实上,我认为它们每个都有一个以上]。)

您使用 client-side 框架编写代码,并且可以部署它:

  • client-side,或
  • server-side 对于静态站点,或
  • 两者的结合

...都具有相同的技术(包括 JavaScript 而不是 [say] PHP,但也具有相同的框架技术)。

Server-side 呈现让您可以向机器人展示一些有意义的东西,或者 pre-bake 常见的页面视图,而不是在客户端呈现它们,或者通过 edge-cached 资源快速加载静态版本然后"hydrate" 使其动态化,...

React世界里server-side渲染的目的是为了解决尽快将内容提供给用户的问题,而不是因为我们没有其他不同编程语言的后端技术我不想打扰,毕竟,我已经将 server-side 渲染和非 server-side 渲染 React 应用程序放在一起,这些应用程序具有 Express 服务器,因此只需 JavaScript 即可完成.

现在,如果您不了解浏览器请求页面,那么仅仅说它是为了解决尽可能快地向用户获取内容的问题可能没有任何意义……然后我们等待…… .浏览器请求一个 JS 文件...然后我们等待...React 应用程序启动,它从后端请求 json...然后我们等待...最后内容可见。

现在这不是在几小时或几分钟内发生,而是在几秒到几毫秒内发生,但这会对企业的成功产生巨大的影响。或许 Fast Company 的这篇文章可以说明问题:

https://www.fastcompany.com/1825005/how-one-second-could-cost-amazon-16-billion-sales

这些大型零售商已经证明,尽可能快地加载页面可以提高转化率和用户满意度,因此,作为工程师,找出某种方法来压缩此加载过程是符合我们最大利益的尽快,因此我们有 server-side 渲染。

我们希望尽快让用户看到内容。我们想要一个请求,然后……砰!用户可以开始使用该应用程序了。