性能優化
一、軟體系統品質特性
安全性
同時兼顧向合法使用者提供服務,以及阻止非授權使用軟體及資源的能力。
健壯、可靠
軟體系統在一定的時間内無故障運作的能力、容錯能力、恢複能力 。
可用性、易用性、性能
性能是指軟體及時提供相應服務的能力。 具體而言, 性能包括速度、 吞吐量和持續高速性三方面的要求 。
可擴充、可維護、可移植
正在運作的軟體系統以适應新需求、變化了的需求的難易程度
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL90TQOJTWE5UenpnTwgDbiBHaYFGbkNDTwYVbiVHNHpleO1GTulzRilWO5xkNNh0YwIFSh9Fd4VGdsATMfd3bkFGazxyaHRGcWdUYuVzVa9GczoVdG1mWfVGc5RHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cWZwpmL3EjNzMjMzAjM5ETMwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpeg)
二、性能的定義及表現定義
多快給使用者想要的結果
考察兩個方面:
1.流暢度
2.更少的資源占用
一些證據
頁面加載超過3秒,就會發生不好的事情!
反面教材:google.com 正義的速度:baidu.com
計算結果越快出來越好!
消耗大量資源的AI alphaGo VS 省電強勁的大腦 柯潔
在這裡插入圖檔描述
三、不同範圍的全局性能思考
應用場景
計算密集型,集中式資源使用
IO密集型,分散型資源利用
硬體環境
單機,CPU、記憶體、磁盤、網絡
多機,存儲架構、網絡架構、應用架構
軟體環境
同構系統,多程序、多線程、多層邏輯
異構系統,認證鑒權、資料互動、服務層級
一些術語
QPS 每秒查詢次數
TPS 每秒傳輸的事物處理個數
呑吐量 機關時間内成功地傳送資料的數量
響應時間 使用者指令到使用者接收結果的時間
性能瓶頸
網絡IO,阻塞式IO是最大的問題
磁盤IO,SSD
CPU
記憶體
磁盤
網絡:帶寬問題,CDN問題
VPS叢集
Linode,日本機房,155ms
DigitOcean
阿裡雲,國内,香港,50ms
騰訊雲,國内,香港,50ms
四、處理模式
伺服器環境安裝
Nginx:提高Tomcat靜态檔案處理能力、負載均衡、反向代理
Centos環境,安裝服務端軟體,統一采用yum方式
Yum install nginx
Yum install java-1.8.0-openjdk.x86_64
Yum install tomat
Yum install mariadb
Yum install vnstat。。。
伺服器環境配置
Nginx的主配置目錄:/etc/nginx/
Nginx的server配置目錄:/etc/nginx/conf.d/
Nginx配置:
程序數 工作線程數 連接配接逾時 上傳檔案限制 緩存 日志路徑
啟動服務 停止服務 配置文法測試 平滑加載
五、伺服器處理方法
伺服器環境優化
網絡優化 安全性配置 使用者組權限 目錄規劃
伺服器正常監控
Top指令 Free指令 Df指令
工具: Xshell Filezilla