美文网首页
React-SSR渲染调研

React-SSR渲染调研

作者: imakan | 来源:发表于2020-04-26 21:19 被阅读0次

前期思考:

  • 1、nodejs环境如何加载前端组件
    • 选用koa、express、egg
  • 2、组件的数据如何获取
  • 3、HRM怎么做(热替换?热重载?CSS HMR)
    • 是否使用webpack-dev-server
    • CSS 不使用style-loader(modul.hot,accept),使用react-hot=loader来实现一个css-hot-loader
  • 4、css如何处理
  • 5、如何拼接完整的HTML结构返回
    • renderToNodeStream
    • ReactDOM.hydrate
  • 6、如何进行路由分割
    • 服务端路由和客户端路由公用一套
  • 7、如何降级为客户端渲染
    • 当服务端渲染出现问题是,降级为客户端渲染
    • 同时支持两种SSR以及CSR两种开发模式,无缝切换
  • 8、是否可以做到同构开发
  • 9、生成环境如何发布应用
    • 如何做到每次不更新服务,react这些静态资源更新后

同构开发需要考量的点

  • 代码或者框架层需要兼容server/client的runtime
    比较直接的一个就是fetch数据操作,如果服务端数据源有RPC协议或者请求的服务存在环境/网络隔离,需要封装成通用的http接口

  • 更复杂的部署和打包构建
    部署和大奥构建过程加倍,简单地理解就是单独的server和单独的client的工作综合

  • 增加服务端负责
    这个是SSR的通病,但使用同构开发方式后完全可以变成一个可有花的点,在使用同构方式时,可以正对服务端资源负载做监控,如果遇到服务端负载过大或者高峰时段,可以将渲染方式无缝切换成csr,待服务端负载正常或者流量回落时,在切换为SSR。

同构开发的优点

  • 服务端和客户端公用代码
  • 更快的页面内容达到时间
  • 更友好的SEO
  • 更优雅的降级方式,更健壮的应用

对比:beidou、next.js、easy team,对比方案

easy-team方案对比

  • 与服务端框架不耦合,easy-team的实现方式与egg框架耦合的太过紧密
  • 本地开发读取服务端bundle的方式更加优雅
  • 通过config.default.js同时两种渲染模式无缝切换而easy-team需要在构建时指定渲染类型

next.js方案对比

  • 与服务端框架不耦合,next实现与http模块耦合紧密
  • 本地开发读取服务端的bundle的方式更加优雅
  • 体积小,同等复杂度项目大小为next.js生成文件的0.3b倍
  • 实现非黑盒,关键配置皆可以通过config.default.js来配置

理想模型:koa+react+ReactDOMServer+midway+webpack

bigpipe的优点,分块传输优点非常明显,且浏览器友好,fb和微博,qunar都是受益者,node天然支持,res.writer很友好

相关文章

  • React-SSR渲染调研

    前期思考: 1、nodejs环境如何加载前端组件选用koa、express、egg 2、组件的数据如何获取 3、H...

  • React-SSR

    How to implement server-side rendering in your React app ...

  • 从解码渲染层面对比 PAG 与 lottie

    从解码渲染层面对比 PAG 与 lottie 最近由于业务需求,需要调研一下业界的知名动画渲染框架。经过一些时间的...

  • 常用的前端数学库

    最近简单调研了几个前端的数学库,比较了他们常用功能、开源协议和商业授权。 渲染库 名称MathJaxKaTex网址...

  • react-ssr 学习笔记 + 代码

    技术栈: react react-redux redux-saga react-router-dom reduxs...

  • pixijs + DragonBonesJS 浅试

    最近在调研舞台渲染引擎。大家说pixijs挺优秀的。然后我尝试着浏览了官网所有 examples,都非常顺利呈现了...

  • 纹理压缩

    前言: 目前在做纹理压缩,对项目调研的资料进行整理 目前的渲染管线中,对于3D物体表面的细节,主要还是...

  • 对后端返回的一堆字符串实现图片懒加载

    需求:对后端返回的一堆字符串实现图片懒加载(react-ssr项目)方案一:将字符串转为DOM对象在内存中操作,操...

  • 复盘---大白话解释react-ssr

    最近刚学了一些react-ssr的内容,刚好用这个来码了自己的个人简历网站。现在临近收尾工作,写一篇笔记来记录复盘...

  • Vue3 SSR 服务端渲染调研

    ---------------- 时间:2020-11-11 ---------------- 状态: ssr 的...

网友评论

      本文标题:React-SSR渲染调研

      本文链接:https://www.haomeiwen.com/subject/aegfwhtx.html