1、高併發,大流量
2、高可用
3、海量數據
4、用戶廣泛,網絡情況複雜
5、安全環境惡略
6、需求快速變更,發佈頻繁
7、漸進式發展
系統可用性:可用性的含義:保證系統7*24小時不間斷服務
系統伸縮性:通過不斷增加服務器來緩解不斷上升的用戶併發訪問壓力和不斷增長的數據存儲需求。
衡量伸縮性的標準是是否可以用多臺服務器構建集羣,是否容易向集羣中添加新的服務器,加入新的服務器後是否可以提供和原來服務器無差別的服務,集羣中可容納的總的服務器數量是否有限制。
系統擴展性:網站快速發展,功能不斷完善,如何設計網站的架構使其能夠快速響應需求變化,主要手段是時間驅動和分佈式服務
性能測試指標,常見的系統操作響應時間表:
操作 |
響應時間
|
打開一個網站
|
幾秒
|
在數據庫中查詢一條記錄(有索引)
|
十幾毫秒
|
機械磁盤一次尋址定位
|
4毫秒
|
從機械磁盤順序讀取1M數據
|
2毫秒
|
從SSD磁盤順序讀取1M數據
|
0.3毫秒
|
從遠程分佈式緩存Redis讀取一個數據
|
0.5毫秒
|
從內存中讀取1M數據
|
十幾微妙
|
java程序本地方法調用
|
幾微妙 |
網絡傳輸2K數據
|
1微妙
|
TPS(每秒事務數)
HPS(每秒HTTP請求數)
QPS(每秒查詢數)