做好數據庫優化能很有效防御SQL注入攻擊,SQL注入攻擊就是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。我們把數據庫優化做好,攻擊者就很難猜測出我們數據庫字段名就很難實現注入。
從運維角度說,先從數據庫表設計來說, 項目立項后,開發部根據產品部需求開發項目,開發工程師工作其中一部分就是對表結構設計。對于數據庫來說,這點很重要,如果設計不當,會直接影響訪問速度和用戶體驗。影響的因素很多,比如慢查詢、低效的查詢語句、沒有適當建立索引、數據庫堵塞(死鎖)等。
另一個方面就是數據庫的部署,項目初期訪問量不會很大,所以單臺部署足以應對在1500左右的QPS(每秒查詢率)。考慮到高可用性,可采用MySQL主從復制+Keepalived做雙擊熱備,常見集群軟件有Keepalived、Heartbeat。
最后就是從性能的優化,無非就是從數據庫配置優化、系統內核的優化和硬件的配置來進行優化。
回答所涉及的環境:聯想天逸510S、Windows 10。
做好數據庫優化能很有效防御SQL注入攻擊,SQL注入攻擊就是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。我們把數據庫優化做好,攻擊者就很難猜測出我們數據庫字段名就很難實現注入。
從運維角度說,先從數據庫表設計來說, 項目立項后,開發部根據產品部需求開發項目,開發工程師工作其中一部分就是對表結構設計。對于數據庫來說,這點很重要,如果設計不當,會直接影響訪問速度和用戶體驗。影響的因素很多,比如慢查詢、低效的查詢語句、沒有適當建立索引、數據庫堵塞(死鎖)等。
另一個方面就是數據庫的部署,項目初期訪問量不會很大,所以單臺部署足以應對在1500左右的QPS(每秒查詢率)。考慮到高可用性,可采用MySQL主從復制+Keepalived做雙擊熱備,常見集群軟件有Keepalived、Heartbeat。
最后就是從性能的優化,無非就是從數據庫配置優化、系統內核的優化和硬件的配置來進行優化。
回答所涉及的環境:聯想天逸510S、Windows 10。