就最近遇到的坑,自己總結的一些準備事項

  1. 收集各個服務器的配置信息,幾個CPU,多少G內存,多大的硬盤,更詳細一點的可以將CPU主頻,硬盤是否固態都了解清楚

  2. 了解整個系統的架構,是否雙機,有無反向代理,負載均衡的配置

  3. 了解一下系統的各個端配置的連接數,

  中間件tomcat的最大連接數,空閑連接數

  war包中的連接池的初始連接數,最大連接數

  DB的最大連接數

  4. 要開始運行了,將各個服務器的硬盤使用情況看一下,清一下log日志等

  1的目的是為了多次性能測試后,對服務器能處理的能力有一個大致的了解

  2的目的是為了有失敗的時候,考慮到一些架構上的問題,思考的范圍加大

  3的目的是不要以為別人的連接數很小而導致隊列資源等待,而你花很長時間去定位,要事先了解系統的一些配置

  4的目的是硬盤滿了,整個壓測TPS上不去,你看系統資源等情況都不太看得出來,程序也照常運行,很容易白費功夫,分析了半天死在準備上

  各個環節用到的工具或者命令

  1.

  a. 如果服務器是linux

  uname -a

  cat /etc/issue

  cat /etc/issue | grep Linux

  cat /proc/cpuinfo

  cat /proc/meminfo

  df -H

  b. 如果服務器是Windows

  我的電腦右擊或者設備管理器查看

  看到在線上運行的App Node, 雙機配置不一致,一個2核一個4核,用1:1的負載在跑著;

  也看到一些項目,CPU核數一樣,主頻赫茲數不一樣,在跑著;

  后期定位問題發現一個App資源占用率高,一個低的

  2. 畫出系統拓補圖

  3. 查看連接數

  如果是tomcat,在server.xml中可以查看,Connector

  如果是war包中的連接池,一般是對DB的連接池,找開發問他配哪兒了,一般config文件

  如果是DB中配置的連接數,一般這邊很少配置了,因為war包中有配置對DB的連接池,SQLserver中select @@MAX_CONNECTIONS SELECT * FROM sys.configurations;

  4.  Linux系統用df -H 或者windows直接登錄或者遠程登錄查看

  5. 如果是查詢,請插入一定量的數據再壓測;如果是新增,新增中一般也有查詢判斷,比如注冊中,手機號不能存在等,最好也要先插入一定的數據。如果新增之前不需要查詢,比如log入庫,可以不用準備數據。

  就最近遇到的坑,自己總結的一些準備事項

  1. 收集各個服務器的配置信息,幾個CPU,多少G內存,多大的硬盤,更詳細一點的可以將CPU主頻,硬盤是否固態都了解清楚

  2. 了解整個系統的架構,是否雙機,有無反向代理,負載均衡的配置

  3. 了解一下系統的各個端配置的連接數,

  中間件tomcat的最大連接數,空閑連接數

  war包中的連接池的初始連接數,最大連接數

  DB的最大連接數

  4. 要開始運行了,將各個服務器的硬盤使用情況看一下,清一下log日志等

  1的目的是為了多次性能測試后,對服務器能處理的能力有一個大致的了解

  2的目的是為了有失敗的時候,考慮到一些架構上的問題,思考的范圍加大

  3的目的是不要以為別人的連接數很小而導致隊列資源等待,而你花很長時間去定位,要事先了解系統的一些配置

  4的目的是硬盤滿了,整個壓測TPS上不去,你看系統資源等情況都不太看得出來,程序也照常運行,很容易白費功夫,分析了半天死在準備上

  各個環節用到的工具或者命令

  1.

  a. 如果服務器是linux

  uname -a

  cat /etc/issue

  cat /etc/issue | grep Linux

  cat /proc/cpuinfo

  cat /proc/meminfo

  df -H

  b. 如果服務器是Windows

  我的電腦右擊或者設備管理器查看

  看到在線上運行的App Node, 雙機配置不一致,一個2核一個4核,用1:1的負載在跑著;

  也看到一些項目,CPU核數一樣,主頻赫茲數不一樣,在跑著;

  后期定位問題發現一個App資源占用率高,一個低的

  2. 畫出系統拓補圖

  3. 查看連接數

  如果是tomcat,在server.xml中可以查看,Connector

  如果是war包中的連接池,一般是對DB的連接池,找開發問他配哪兒了,一般config文件

  如果是DB中配置的連接數,一般這邊很少配置了,因為war包中有配置對DB的連接池,SQLserver中select @@MAX_CONNECTIONS SELECT * FROM sys.configurations;

  4.  Linux系統用df -H 或者windows直接登錄或者遠程登錄查看

  5. 如果是查詢,請插入一定量的數據再壓測;如果是新增,新增中一般也有查詢判斷,比如注冊中,手機號不能存在等,最好也要先插入一定的數據。如果新增之前不需要查詢,比如log入庫,可以不用準備數據。