不使用任何框架开发server的总结
- 开发了哪些功能模块,完整的流程
- 用到了那些核心的知识点
- server和前端的区别
开发了哪些功能模块,完整的流程
五大部分
- 处理http接口 如:处理路由,path,cookie等方法
- 连接数据库
- 实现登陆 cookie、session、redis ,联调nginx配置等
- 安全措施 xss sql注入
- 日志
流程图
核心的知识点
- http,nodejs处理http、处理路由,mysql
- cookie,session,redis,nginx反向代理
- sql注入,xss攻击,加密
- 日志,stream,contrab,readline
session解决cookie的危险问题,session是js变量,放在nodejs进程中,但是session有两个问题
1、多进程无法共享
2、session过大进程整个在内存中会挤爆
对于这两个问题采用了redis
redis最常用的缓存数据库,数据库存放在内存中,session存储就放在。
redis与mysql的区别
1、redis场景读写快,但是成本较高,端点不稳定(session适合redis)
2、mysql读写慢,但成本低,可存储大量数据 (网站数据适合mysql)
server 和前端的区别
1、服务稳定性 (待完善)
2、内存CPU(优化 扩展),如果session过大redis可以做扩展
3、日志记录
4、安全(包括登陆校验)
5、集群和服务拆分