1姚炕、性能:很多時候性能問題是網站架構升級的觸發(fā)器,提高性能的方式如下:
* 瀏覽器端:瀏覽器緩存丢烘、頁面壓縮柱宦、合理布局頁面、減少Cookie傳輸
?* 使用CDN播瞳、反向代理服務器(緩存)
?* 應用服務器端:服務器本地緩存掸刊、分布式緩存
?* 異步操作
* 集群
?* 代碼層面:使用多線程,改善內存管理
?* 數據庫服務器端:索引狐史、緩存痒给、SQL優(yōu)化说墨,NoSQL數據庫優(yōu)化數據模型骏全、存儲結構、伸縮特性
衡量網站性能的指標:響應時間尼斧、TPS(吞吐量)姜贡、系統(tǒng)性能計數器,分析這些指標可以分析系統(tǒng)瓶頸棺棵、預測網站容量楼咳、對異常進行警報。
?2烛恤、可用性:
?* 目標是服務器宕機時服務依然可用
?* 主要手段是冗余:應用部署再多臺服務器上同時提供訪問母怜,數據存儲再多臺服務器上互相備份。
* 通過預發(fā)布驗證缚柏、自動化測試苹熏、自動化發(fā)布、灰度發(fā)布等手段減少故障币喧。
?3轨域、伸縮性(硬件):不斷向集群中加入服務器,來緩解不斷上升的用戶并發(fā)訪問壓力和數據存儲需求杀餐。衡量標準:是否容易添加新服務器干发;新服務器加入后提供無差別服務;集群中可容納的服務器總數量是否有限制史翘。
* 應用服務器集群:使用合適的負載均衡設備
?* 緩存服務器集群:加入新的服務器可能導致緩存路由失效枉长。需要改進緩存路由算法保證緩存數據的可訪問性
?* 關系數據庫:路由分區(qū) 將部署有多個數據庫的服務器組成一個集群
?* NoSQL數據庫:伸縮性好
?4冀续、擴展性(業(yè)務):衡量標準:網站增加新業(yè)務產品時,是否可少改動搀暑,新業(yè)務功能就能上線沥阳。 主要手段:事件驅動架構、分布式服務自点、開放平臺接口(第三方開發(fā)周邊產品)
?* 事件驅動架構:利用消息隊列
?* 分布式服務:將業(yè)務和可復用服務分離桐罕,通過分布式服務框架調用。
?5桂敛、安全性