性能調優經驗理論(方法論)

① 架構層面的優化

1) 水平擴展、無狀態化設計

2) 動靜分離

② 機器及網絡傳輸優化:

1) 增大機器配置、增大機器網絡寬帶

2) 壓縮傳輸

3) TCP長連接快速回收、重複利用

③ 框架及代碼層面:

1) 合併請求,減少序列化,減少請求數量;

2) 緩存技術:緩存粒度、有效期,緩存預熱,二級緩存,本地緩存

3) 異步化調用:消息隊列、日誌異步

4) 線程池,NIO

5) 減少鎖使用

6) 避免頻繁創建銷燬對象,線程池,數據庫連接池,httpPool都是這個道理

④ 數據庫層面:

1) 讀寫分離

2) 降低隔離性,事務隔離性

3) Sql優化,索引,表設計是否合理

4) 批處理,預處理

⑤ 中間件調優:

1) 集群化部署

2) 連接池,工作進程數,線程數

3) 其他各種參數配置調整

⑥ 搭建實時性能監控平臺,逐步加壓找性能瓶頸:

1) Jmeter

2) Pinpoint、zipkin、influxdb等

3) Jstat、jconsole、jmap、top、free -m、df -h

⑦ JVM調優(穩定性)

1) 堆內存初始化大小,最大

2) 使用G1垃圾回收器


分享到:


相關文章: