session存放到nodejs进程中的缺陷 & 解决方案

  • 但此时session只是一个存放在nodejs进程中的js变量,会有如下缺陷

    • 进程内存有限,如果访问量过大内存暴增,进程容易挂掉

    • 项目正式上线是多进程运行,进程之间内存无法共享

在这里插入图片描述

  • 考虑session的特点

    • session数据量不会很大

    • session数据的丢失只需要登录以下就可以恢复,可以不用持久化保存

    • session放在所有访问的入口中( index.js ),被访问频繁,对性能要求极高

  • 解决缺陷的方案 : 将session存储于redis,以拆分成独立服务

    • redis基本操作 & nodejs连接redis总结

    • redis将数据存放在内存中,内存的读写速度快,价格昂贵,数据非持久化保存

    • 将server、redis、mysql拆分成三个独立的服务,均可扩展( 例如都可扩展为集群 )

在这里插入图片描述

发布了64 篇原创文章 · 获赞 29 · 访问量 2337

猜你喜欢

转载自blog.csdn.net/Brannua/article/details/105156687