陌小路的个人博客 陌小路的个人博客
首页
  • 技术专区

    • 面试
    • Vue
    • Electron
    • TypeScript
    • Serverless
    • GraphQL
  • 我的秋招之旅
  • 2019年终总结
Todo
收藏夹
关于作者
GitHub

陌小路

前端切图仔
首页
  • 技术专区

    • 面试
    • Vue
    • Electron
    • TypeScript
    • Serverless
    • GraphQL
  • 我的秋招之旅
  • 2019年终总结
Todo
收藏夹
关于作者
GitHub
  • Vue

    • Vue3-beta-初体验
    • Vue-nextTick源码分析
    • Vuex-源码分析01
    • Vuex-源码分析02
    • Vite源码分析
    • Vue服务端渲染

      • 介绍
      • 快速上手
      • Vue项目添加SSR
      • 服务端搭建
      • 一键式启动项目与热更新
      • 总结
      • Petite-Vue
    • React

    • 面试

    • Electron

    • Serverless

    • GraphQL

    • TypeScript

    • RxJS

    • 工程化

    • Webpack

    • Nestjs

    • WebRTC & P2P

    • Docker

    • Linux

    • Git

    • Svelte

    • 踩坑日记 & 小Tips

    • 其他

    • technology
    • Vue
    陌小路
    2021-01-24

    总结

    总结

    总体来说涉及流程还蛮多的,稍微有点小复杂,对于不熟悉node和webpack的童鞋来说可能会稍微有点不太好理解,不过也不用慌,按照笔者前面给出的架构图来看,应该也能知晓到大概的步骤。

    如果遇到面试问到,说不定就算不会,也能说到一二。万一面试官都不会,那就更加精彩了(手动滑稽)。

    对于服务端渲染来说呢,我们更多需要考虑的还是服务端的请求处理压力问题,毕竟在某些并发量大的情况下容易造成服务崩溃,同时由于Node是单线程工作,所以如果不做特殊处理导致服务器不可用那么整个网站也将无法访问了,当然我们也可以开启多线程,尽可能利用服务器多核处理能力,来分担服务器处理请求的压力。

    不仅如此,我们也可以为服务器cpu占用设定一个阈值,一旦达到或超过这个设定的阈值就直接降级到csr(客户端渲染)模式,也能有效降低服务器的几率。

    除了以上提到的优化的手段,我们也可以在提高服务稳定性上来进行多层次分析,比如接入监控、日志系统、进程守护等等。

    或者也可以采用缓存,减少一些不必要的重复渲染,常见的比如配合lru-cache实现页面级缓存或组件级别缓存等;如果是在多进程场景下,可能会出现不同进程缓存内容不同享的问题导致缓存失效,我们可以针对这种情况引入redis提供缓存服务。

    # 参考链接

    后端渲染、客户端渲染(CSR)、同构应用(SSR) 单页应用多路由预渲染指南

    编辑
    上次更新: 2023/11/25, 4:11:00
    一键式启动项目与热更新
    Petite-Vue

    ← 一键式启动项目与热更新 Petite-Vue→

    最近更新
    01
    github加速
    01-01
    02
    在线小工具
    01-01
    03
    Lora-Embeddings
    11-27
    更多文章>
    Theme by Vdoing | Copyright © 2020-2024 STDSuperman | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式