[TOC]
>[success] # server端與前端的區別
<br>
>[success] ## 服務穩定性
1. **server 端** 可能會遭受各種惡意攻擊和誤操作
2. 單個客戶端可以意外掛掉,但是服務端不能
3. 后續會使用 **PM2** 做 **進程守候** ,進程一旦掛掉了,可以自己進行重啟程序,不用人工去重啟服務器。
>[success] ## 考慮CPU和內存(優化、擴展)
1. **客戶端** 獨占一個瀏覽器,**內存** 和 **CPU** 都不是問題。
2. **server 端** 要承載很多請求, **內存** 和 **CPU** 都是 **稀缺資源**
3. 后續會使用 **stream** 寫日志,使用 **redis** 存 **session**
>[success] ## 日志記錄
1. 前端也會參與寫日志,但只是日志的發起方,不關心后續
2. **server 端** 要記錄日志,存儲日志,分析日志,前端不關心
3. 后續會講解使用多種記錄日志方式,以及如何分析日志
>[success] ## 安全
1. **server 端** 要隨時準備接收各種惡意攻擊,前端則少很多
2. 如:**越權操作,數據庫攻擊** 等
3. 后續會講解登陸驗證,預防 **xss攻擊** 和 **sql注入**
>[success] ## 集群和服務拆分
1. 產品發展速度快,流量可能會迅速增加
2. 如何擴展機器和服務拆分來承載大流量?
3. 本次是單機器開發,但是從設計上支持服務拆分
- NodeJS基礎
- 什么是NodeJS
- npm
- Node.js+Express+Koa2+開發Web Server博客
- 下載和安裝node
- nodejs和js的區別
- commonjs-演示
- nodejs如何debugger
- server端與前端的區別
- 項目需求分析
- 開發接口(不使用任何框架)
- http-概述
- 處理get請求
- 處理post請求
- 處理http請求的綜合示例
- 搭建開發環境
- 初始化并且開發路由
- 開發博客項目之數據存儲
- MySql介紹
- 數據庫操作(創建和增、刪、查)
- Nodejs 操作 Mysql
- Nodejs 鏈接 mysql 做成工具
- API 對接 MySQL
- 開發博客項目之登陸
- cookie-介紹
- cookie用于登錄驗證
- cookie做限制