性能測試診斷分析與優(yōu)化.pptx
《性能測試診斷分析與優(yōu)化.pptx》由會員分享,可在線閱讀,更多相關《性能測試診斷分析與優(yōu)化.pptx(116頁珍藏版)》請在裝配圖網上搜索。
1、性能測試診斷分析與優(yōu)化,陳能技 嘉為IT培訓學院,培訓講師介紹,陳能技 () 11年軟件測試與質量管理經驗 著作: 軟件測試技術大全 .NET軟件測試實戰(zhàn)技術大全 QTP自動化測試最佳實踐 軟件自動化測試成功之道 性能測試診斷分析與優(yōu)化,培訓課堂的注意事項,培訓中 積極、主動不僅使您獲得更多的收獲,也使培訓講師能有的放矢、保持激情。 持之以恒、集中精力,您收獲的將不僅是知識; 請您記得將手機調至震動狀態(tài)或關機,以免影響您的同學。 培訓后 填寫課程反饋表 刪除桌面臨時文件 關機,培訓后事項,填寫課程反饋表 刪除桌面臨時文件 關機,性能監(jiān)控方法 性能診斷分析與優(yōu)化 性能測試新興技術介紹,一、性能監(jiān)
2、控方法,操作系統(tǒng)層性能監(jiān)控 Web服務器性能監(jiān)控 中間件服務器性能監(jiān)控,1、操作系統(tǒng)層性能監(jiān)控,CPU性能監(jiān)控 內存性能監(jiān)控 磁盤IO性能監(jiān)控 網絡性能監(jiān)控 開源網絡性能監(jiān)控工具的應用 使用Spotlight監(jiān)控操作系統(tǒng),CPU性能監(jiān)控,查看CPU信息: cat /proc/cpuinfo Top Vmstat 2 3 Dstat -cip 1 Mpstat -P ALL 1 Sar 1 10 Pidstat -p 2 5,Top,使用方式:top - d delay q c S s i n b 說明:即時顯示process的動態(tài) d :改變顯示的更新速度,或是在交談式指令列( interac
3、tive command)按s q :沒有任何延遲的顯示速度,如果使用者是有superuser的權限,則top將會以最高的優(yōu)先序執(zhí)行 c :切換顯示模式,共有兩種模式,一是只顯示執(zhí)行檔的名稱,另一種是顯示完整的路徑與名稱S :累積模式,會將己完成或消失的子行程( dead child process )的CPU time累積起來 s :安全模式,將交談式指令取消,避免潛在的危機 i :不顯示任何閑置(idle)或無用(zombie)的行程 n :更新的次數,完成后將會退出top b :批次檔模式,搭配n參數一起使用,可以用來將top的結果輸出到檔案內,范例: 顯示更新十次后退出; top -n
4、 10 將更新顯示二次的結果輸入到名稱為top.log的檔案里: top -n 2 -b top.log,Vmstat,r表示運行隊列的大小 b表示由于IO等待而block的線程數量 in表示中斷的數量 cs表示上下文切換的數量 us表示用戶CPU時間 sys表示系統(tǒng)CPU時間 wa表示由于IO等待而是CPU處于idle狀態(tài)的時間 id表示CPU處于idle狀態(tài)的總時間,DSTAT,dstat可以給出每一個設備產生的中斷數 設備名和設備號的關系可以參考文件 /proc/interrupts,Mpstat,mpstat可以顯示每個CPU的運行狀況,比如系統(tǒng)有4個CPU。我們可以看到: # mps
5、tat P ALL 1 Linux 2.4.21-20.ELsmp (localhost.localdomain) 05/23/2006 05:17:31 PM CPU %user %nice %system %idle intr/s 05:17:32 PM all 0.00 0.00 3.19 96.53 13.27 05:17:32 PM 0 0.00 0.00 0.00 100.00 0.00 05:17:32 PM 1 1.12 0.00 12.73 86.15 13.27 05:17:32 PM 2 0.00 0.00 0.00 100.00 0.00 05:17:32 PM 3 0
6、.00 0.00 0.00 100.00 0.00,sar,%user列顯示了用戶進程消耗的CPU時間百分比。 %nice列顯示了運行正常進程所消耗的CPU時間百分比。 %system列顯示了系統(tǒng)進程消耗的CPU時間百分比。 %iowait列顯示了IO等待所占用的CPU時間百分比 %steal列顯示了在內存相對緊張的環(huán)境下pagein強制對不同的頁面進行的steal操作。 %idle列顯示了CPU處在空閑狀態(tài)的時間百分比。 sar 2 5 // 每隔2秒,顯示5次,CPU使用的情況 sar支持保存成兩種格式的文件,一種是文本文件,一種是二進制文件(只有通過sar自己的命令才能查看) sar 1
7、 10 data.txt sar 1 5 - o data // 每隔1秒,寫入5次,將CPU使用的數據寫入二進制文件data中。 sar - f data // 查看data文件,Pidstat,監(jiān)視某個進程的CPU使用情況 1.通過ps命令找到相應進程的PID: ps - e 2.使用pidstat命令監(jiān)視進程,詳細用法見:http://pagesperso-orange.fr/sebastien.godard/man_pidstat.html pidstat 2 5 每隔2秒,顯示5次,所有活動進程的CPU 使用情況 pidstat - p 3132 2 5 每隔2秒,顯示5次,PID為
8、1643的進程的CPU使用情況顯示 pidstat - p 3132 2 5 - r 每隔2秒,顯示5次,PID為1643的進程的內存使用情況顯示,內存性能監(jiān)控,查看內存信息: cat /proc/meminfo Free m Vmstat 2 10 Top Ps,free,$ free -m total used free shared buffers cached Mem: 1002 769 232 0 62 421 -/+ buffers/cache: 286 715 Swap: 1153 0 1153,第一部分Mem行: total 內存總數: 1002M
9、used 已經使用的內存數: 769M free 空閑的內存數: 232M shared 當前已經廢棄不用,總是0 buffers Buffer緩存內存數: 62M cached Page緩存內存數:421M 關系:total(1002M) = used(769M) + free(232M),第二部分(-/+ buffers/cache): (-buffers/cache) used內存數:286M (指的第一部分Mem行中的used - buffers - cached) (+buffers/cache) free內存數: 715M (指的第一部分Mem行中的free + buffers +
10、 cached) 可見-buffers/cache反映的是被程序實實在在吃掉的內存,而+buffers/cache反映的是可以挪用的內存總數。,vmstat,,vmstat,memory swpd列表示切換到內存交換區(qū)的內存數量(以k為單位)。如果swpd的值不為0,或者比較大,只要si、so的值長期為0,這種情況下一般不用擔心,不會影響系統(tǒng)性能。 free列表示當前空閑的物理內存數量(以k為單位) buff列表示buffers cache的內存數量,一般對塊設備的讀寫才需要緩沖。 cache列表示page cached的內存數量,一般作為文件系統(tǒng)cached,頻繁訪問的文件都會被cached
11、,如果cache值較大,說明cached的文件數較多,如果此時IO中bi比較小,說明文件系統(tǒng)效率比較好。 swap si 列表示由磁盤調入內存,也就是內存進入內存交換區(qū)的數量。 so列表示由內存調入磁盤,也就是內存交換區(qū)進入內存的數量。 一般情況下,si、so的值都為0,如果si、so的值長期不為0,則表示系統(tǒng)內存不足。需要增加系統(tǒng)內存。,監(jiān)控單個進程占用內存的情況,top -d 1然后shift + m(Sort by memory usage) Ps aux | grep HoldMemoryMain top -b -n1 -p 21642 | tail -2|head -1|awk pr
12、int $5 VIRT=SWAP+RES VIRT 進程使用的虛擬內存總量,單位kb SWAP 進程使用的虛擬內存中,被換出的大小,單位kb RES 進程使用的、未被換出的物理內存大小,單位kb,磁盤性能監(jiān)控,df -hlT parted -l Vmstat iostat -d 2 3 sar -d 2 3 Iotop pidstat iodump,iostat,,iotop,pidstat,pidstat -d 1 pidstat -C test_io -t -d 1,iodump,wget echo 1 /proc/sys/vm/block_dump,rootkanga:# while t
13、rue; do sleep 1; dmesg -c; done | perl iodump C# Caught SIGINT. TASK PID TOTAL READ WRITE DIRTY DEVICES firefox 4450 4538 251 4287 0 sda4, sda3 kjournald 2100 551 0 551 0 sda4 firefox 28452 185 185 0 0 sda4 kjournald 782 59 0 59 0 sda3 pdflush 31 30
14、 0 30 0 sda4, sda3 syslogd 2485 2 0 2 0 sda3 firefox 28414 2 2 0 0 sda4, sda3 firefox 28413 1 1 0 0 sda4 firefox 28410 1 1 0 0 sda4 firefox 28307 1 1 0 0 sda4 firefox 28451 1 1 0 0 sda4,網絡性能監(jiān)控,ping Netstat -i Sar -n DEV 1 3 Sar
15、-n SOCK 1 3 ifTop、ipTraf,ifTop,,開源性能監(jiān)控工具的應用,Cacti、Nagios Nmon ,Cacti,Cacti是一套基于PHP,MySQL,SNMP及 RRDTool開發(fā)的監(jiān)控工具,可以監(jiān)控主機的狀態(tài)和負載情況,添加相應的模板后,可以用來監(jiān)控 Apache、MySQL 等服務器的運行狀態(tài)。,Nmon,Nmon是IBM提供的開源監(jiān)控工具,可對AIX和Linux系統(tǒng)資源進行監(jiān)控,可收集系統(tǒng)資源使用情況并輸出到特定文件,并可利用Excel分析工具進行數據統(tǒng)計分析。,使用Spotlight監(jiān)控操作系統(tǒng),,2、Web服務器性能監(jiān)控,IHS性能監(jiān)控方法 HTTP連接狀
16、態(tài)監(jiān)控 Web服務器吞吐量監(jiān)控,IHS性能監(jiān)控,打開server-status監(jiān)控 狀態(tài)監(jiān)控頁面,打開server-status監(jiān)控,LoadModule status_module modules/ApacheModuleStatus.dll # Allow server status reports, with the URL of http://servername/server-status # Change the .your_ to match your domain to enable. SetHandler server-status order deny,allow deny
17、 from all allow from 127.0.0.1 ,狀態(tài)監(jiān)控頁面,Scoreboard Key: _ Waiting for Connection, S Starting up, R Reading Request, W Sending Reply, K Keepalive (read), D DNS Lookup, L Logging, G Gracefully finishing, . Open slot with no current process,Web服務器網絡連接監(jiān)控,Linux下實時檢測httpd連接數 watch -n 1 -d pgrep httpd|wc -l
18、“ 查看TCP并發(fā)連接情況: netstat -n | awk /tcp/ ++S$NF END for(a in S) print a, Sa,Web服務器網絡連接監(jiān)控,3、中間件服務器性能監(jiān)控,WAS性能監(jiān)控 WAS自帶監(jiān)控工具的使用 perfServletApp的使用方法 LoadRunner監(jiān)控WAS 使用AppDynamics監(jiān)控WebSphere JVM性能監(jiān)控方法及工具 GC日志監(jiān)控分析 Thread Dump JVM遠程監(jiān)控 JDBC性能監(jiān)控,WAS性能漏斗模型,WAS性能監(jiān)控的方面,Session 線程池 JDBC連接 JVM性能,WAS性能監(jiān)控的方法和工具,WAS自帶性能監(jiān)
19、控工具的使用 perfServletApp的使用方法 LoadRunner監(jiān)控WAS,WAS自帶性能監(jiān)控工具的使用,WAS自帶性能監(jiān)控工具的使用,用TPV監(jiān)控JVM發(fā)現內存泄漏現象,perfServletApp的使用方法,部署PerfServletApp.ear到WebSphere目錄下,perfServletApp的使用方法,LoadRunner監(jiān)控WAS,JVM性能監(jiān)控通用方法,JConsole實時監(jiān)控JVM GC日志分析 Heap Dump Thread Dump,JVM性能監(jiān)控通用方法-JConsole實時監(jiān)控JVM,JVM性能監(jiān)控通用方法-GC日志分析,打開 WAS GC日志,打開W
20、AS GC日志 Java和進程管理-進程定義-Java虛擬機-詳細垃圾回收(保存配置后重新啟動服務生效) Java和進程管理-進程定義-Java虛擬機-運行時-詳細垃圾回收(確認后立即生效) 在通用JVM參數輸入框中添加:-Xverbosegclog:gc.log JVM GC日志的保存目錄 WASHOME/profiles/yourprofile/logs/yourserver/native_stderr.log 和 native_stdout.log C:WebSphereAppServerprofilesAppSrv01gc.log,GC日志分析工具,IBM Support Assist
21、ant - Garbage Collection and Memory Visualizer IBM Pattern Modeling and Analysis Tool(PMAT) GCViewer ,JVM性能監(jiān)控通用方法- Heap Dump,heapdump文件是一個二進制文件,它保存了某一時刻jvm堆中對象情況,這種文件需要相應的工具進行分析,例如 heapanalyzer。這個文件最重要的作用就是分析系統(tǒng)是否存在內存溢出的情況,通過heapanalyzer可以很簡單地分析出溢出的位置。 產生WAS Heap Dump的方法,JVM性能監(jiān)控通用方法-Thread Dump,線程監(jiān)控和
22、分析工具,Thread dump提供了當前活動的線程的快照.它提供了JVM中所有Java線程的棧跟蹤信息 產生WAS Thread Dump的方法 Jconsole VisualVM JProfiler Thread Dump Analyzer IBM Thread and Monitor Dump Analyzer for Java,JVM遠程監(jiān)控,Jstatd Jconsolevisualvm Jprofile,中間件性能監(jiān)控與分析工具,HP Diagnostics JProfiler JProbe YourKit AppDynamics DomainHealth Javamelody J
23、AMON,AppDynamics,WAS的Session監(jiān)控與分析,ActiveCount:正在處理請求的Session數量 LiveCount:目前緩存在內存中的本地Session的數量,WAS線程數監(jiān)控分析,ActiveCount: 處于激活狀態(tài)的線程數。 PoolSize: 線程池中的平均線程數。 PercentMaxed: 所有線程在使用的時間的平均百分比。 DeclaredthreadHungCount: 掛起的線程數。,WAS的JDBC連接池監(jiān)控,WaitingThreadCount: 當前等待連接的線程。 FaultCount: 在連接池中出現錯誤(例如超時)的數量。 Perce
24、ntUsed: 當前連接池中被使用的平均百分比。,JDBC性能分析,P6spy + sqlprofiler JDbMonitor JAMON,JProfiler監(jiān)控JDBC,,二、性能診斷分析與優(yōu)化,操作系統(tǒng)層性能分析與優(yōu)化 HIS服務器配置優(yōu)化 中間件性能分析與優(yōu)化 JVM性能分析 使用JConsoleJava VisualVM監(jiān)控和分析WebSphere的JVM性能 JVM參數調整與優(yōu)化 利用JProfiler分析定位Java內存泄漏問題 Java代碼線程死鎖問題分析與定位 JSPServlet性能優(yōu)化方法,操作系統(tǒng)層性能分析與優(yōu)化,Linux系統(tǒng)性能診斷 操作系統(tǒng)性能調優(yōu),Linux系統(tǒng)
25、性能診斷,CPU,對于每一個CPU來說運行隊列不要超過3,例如,如果是雙核CPU就不要超過6; 如果CPU在滿負荷運行,應該符合下列分布, a) User Time:65%70% b) System Time:30%35% c) Idle:0%5% 對于上下文切換要結合CPU使用率來看,如果CPU使用滿足上述分布,大量的上下文切換也是可以接受的。,內存,(-/+ buffers/cache)的free和used Swap(si 、so),內存分析案例,上面是一個頻繁讀寫交換區(qū)的例子,可以觀察到以下幾點: 物理可用內存 free 基本沒什么顯著變化,swapd 逐步增加 當臟頁達到10的時候就開
26、始大量使用 swap,free目前的值約等于256MB*10%=2.56MB buff 穩(wěn)步減少說明系統(tǒng)知道內存不夠了,kwapd 正在從 buff 那里借用部分內存 kswapd 持續(xù)把臟頁面寫到 swap 交換區(qū)(so),從 swapd 逐漸增加看出確實如此,IO,同一時間進行大量的I/O操作 在這種情況時我們會發(fā)現CPU的wa時間百分比會上升,證明系統(tǒng)的idle時間大部分都是在等待I/O操作。,從這個輸出我們可以看到CPU有50%的時間都在等待I/O操作,我們還可以看到系統(tǒng)的bi值很大,證明系統(tǒng)有大量的I/O請求將磁盤內容讀入內存。,IO,將top的輸出通過faults進行排序。我們可以
27、看到vmware產生最多的page faults。也就是說它進行了大量的IO操作。,IO,任何I/O操作都需要一定的時間,而且這些時間對于硬盤來說是確定的,它包含磁盤旋轉的延時RD(rotation delay)和磁頭搜索時間DS(disk seek)。 RD由磁盤轉速(RPM)決定。RD是磁盤旋轉一周所需時間的一半。如RPM為10000(1分鐘轉1萬次). RPS=RPM/60=166(1秒轉166次)。1/166=0.0006=6ms (磁盤旋轉一周要6毫秒)。RD=6ms/2=3ms 磁盤平均搜索時間是3ms,數據傳輸的平均延時是2ms,這樣一次I/O操作的平均時間是:3ms+3ms+2
28、ms=8ms IOPS=1000/8=125 這塊磁盤的每秒IO數(IOPS)為125。所以對于10000RPM的磁盤來說它所能承受的IO操作在IOPS在120150之間。如果系統(tǒng)的I/O請求超過這個值,就會使磁盤成為系統(tǒng)的瓶頸。,連續(xù)I/O vs.隨機I/O,連續(xù)I/O常常出現在企業(yè)級數據庫這樣的應用中,需要連續(xù)的讀取大量數據。這種系統(tǒng)的性能依靠它讀取和移動數據的大小和快慢。我們用iostat來監(jiān)控,會發(fā)現rKB/s和wKB/s會很高。,Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz a
29、wait svctm %util /dev/sda 0.00 12891.43 0.00 105.71 0.00 106080.00 0.00 53040.00 1003.46 1099.43 3442.43 26.49 280.00,從輸出我們看到w/s=105,wKB/s=53040.所以53040/105=505KB per I/O.,連續(xù)I/O vs.隨機I/O,對于隨機I/O的系統(tǒng)來說性能的關注點不在搜傳輸數據的大小和速度,而是在磁盤的IOPS。這類系統(tǒng)的I/O請求比較小但是數量很大,如Web服務器和Mail服務器。他們的性能主要依賴每秒鐘可處理的請求數:,Device: rrqm/
30、s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util /dev/sda 0.00 633.67 3.06 102.31 24.49 5281.63 12.24 2640.82 288.89 73.67 113.89 27.22 50.00,從輸出我們看到w/s=102,wKB/s=2640.所以2640/102=23KB per I/O. 因此對于連續(xù)I/O系統(tǒng)來說我們要關注系統(tǒng)讀取大量數據的能力即KB per request. 對于隨機I/O系統(tǒng)我們注重IOPS值.,操作系統(tǒng)性能調優(yōu),系
31、統(tǒng)安裝優(yōu)化 RAID SWAP分區(qū) 系統(tǒng)安裝后的初步調整優(yōu)化 檢查系統(tǒng)是否正常 關閉不需要的服務 對TCP/IP網絡參數進行調整 內核參數優(yōu)化 針對Web服務器的網絡參數優(yōu)化 針對數據庫服務器的內核參數優(yōu)化,IHS服務器配置優(yōu)化,MPM對Apache性能的影響 影響性能的配置 并發(fā)線程相關的設置 日志對性能的影響 壓縮 mod_cache,中間件性能分析與優(yōu)化,IHS優(yōu)化 WAS Session優(yōu)化 內存中最大會話量 Session超時 WAS線程池優(yōu)化 WAS JDBC連接池優(yōu)化 連接超時 最大連接數 最小連接數 JVM性能分析與優(yōu)化,,應用層攻擊,數據庫服務器,JDBC數據庫連接典型問題分
32、析,某電網公司企業(yè)網站標準化系統(tǒng),在100個并發(fā)用戶壓力下進行內網網站首頁訪問登錄操作,發(fā)現該系統(tǒng)的應用服務器和數據庫服務器連接異常,大量出現錯誤,測試軟件報錯信息如下:,通過對分析,發(fā)現部分連接參數設置太小,對連接參數進行調整后,測試組對系統(tǒng)進行了再次測試,基本不存在連接失敗的情況。,,應用層攻擊,某電網公司人力資源系統(tǒng),員工名冊查詢無法做壓力測試,響應超時的問題,主要是請求的sql太長了,com.sophia.hr.modules.employee.external.impl.EmployeeServiceImpl.java類,修改了方法empListSQL4Info方法,再次測試,響應時
33、間明顯改善。,JDBC數據庫連接典型問題分析,,應用層攻擊,某電商網站,JDBC數據庫連接典型問題分析,Caused by: java.sql.SQLException: We are already in the process of making 11 connections and the number of simultaneous builds has been throttled to 10,JVM性能分析,JVM垃圾回收對性能的影響 吞吐量、GC停頓 JVM內存泄漏診斷 線程問題診斷 JVM堆大小對垃圾回收、系統(tǒng)吞吐量的影響 GC策略對系統(tǒng)性能的影響,JVM的堆,JVM年輕代與年
34、老代,Minor GC的過程,Full GC,Full GC對性能的影響 jstat -gc pid 可以顯示gc的信息,查看gc的次數,及時間。 其中最后五項,分別是young gc的次數,young gc的時間,full gc的次數,full gc的時間,gc的總時間。,GC日志人肉分析,WAS GC日志分析工具,用PMAT分析GC日志 java -Xmx512m -jar ga414.jar GCViewer,WAS GC 日志分析 案例,WAS GC 日志分析 案例,可以看到Full GC非常多,占所有pause時間比達到65.9%,這是有問題的,GC應該盡可能在年輕代完成,而不是到年
35、老代,JVM堆大小對垃圾回收、系統(tǒng)吞吐量的影響,案例 - PlantsByWebSphere JConsole遠程監(jiān)控WAS JProfiler查看GC Activity(垃圾回收器的活動占用整體時間的百分比),案例,某電網公司可靠性系統(tǒng) JVM內存不足、頻繁GC、服務器CPU忙,JVM參數調整與優(yōu)化,JVM堆參數設置 GC參數設置,GC策略對系統(tǒng)性能的影響,新生代串行收集器 老年代串行收集器 并行收集器 新生代并行回收收集器 老年代并行回收收集器 CMS(Concurrent Mark Sweep)收集器,-Xgcpolicy:optthruput -Xgcpolicy:optavgpaus
36、e -Xgcpolicy:gencon -Xgcpolicy:balanced,案例 PlantsByWebSphere,Java代碼性能問題診斷分析與優(yōu)化,Java代碼性能分析 JSPServlet性能分析與優(yōu)化 JDBC性能分析與優(yōu)化 JProfiler等性能分析工具的應用,Java代碼性能分析,代碼執(zhí)行效率 CPU使用 內存使用 IO使用 線程鎖,JAVA代碼執(zhí)行效率監(jiān)控分析,JAVA CPU使用監(jiān)控分析,查看java進程: jps 確認java進程CPU性能: pidstat -p -u 1 3 進一步查看線程CPU性能,定位到CPU高消耗的線程ID: pidstat -p 1 3
37、 -u -t 根據定位到的線程ID,使用jstack導出線程堆棧進行驗證: jstack -l /tmp/t.txt 在導出的線程堆棧中查找引起高CPU消耗的線程ID(nid),需要從十六進制轉換為10進制,從而定位到哪個線程的Java代碼執(zhí)行導致占用大量CPU,JAVA內存使用監(jiān)控分析,JProfiler性能分析工具的應用,案例演練-Java內存泄漏檢測,TestMem,JAVA I/O使用監(jiān)控分析,iostat -dx 3 jps pidstat -p -d -t 1 3 jstack -l /tmp/t.txt,Java線程鎖監(jiān)控分析,Jstack監(jiān)控JAVA線程死鎖,jps jst
38、ack -l 1.txt 查找輸出結果定位死鎖,WAS線程Dump,Linux下命令行啟動WAS, Kill -3 /opt/IBM/WebSphere/AppServer/profiles/AppSrv01,Idle線程:一個已經準備好接受請求的線程,但是沒有和插件或者客戶端建立連接 Keep-Alive線程:是一個已經準備好接受請求的線程,并且已經和插件或者客戶端建立連接 正在接受請求的線程:是一個線程正在讀取request的內容或者頭部,WAS線程Dump分析工具,IBM Thread and Monitor Dump Analyzer for Java java -Xmx500m -j
39、ar jca101.jar,JSPServlet性能分析與優(yōu)化,JSP 、Servlet常見性能問題分析與優(yōu)化 工具 AppDynamics、JProfiler JAMON,JSP 、Servlet常見性能問題分析與優(yōu)化,頁面包含 Page Session JavaBean的生命周期 Session過期時間 init()方法與緩存 壓縮輸出,三、性能測試新興技術介紹,開源性能壓力測試工具介紹 云性能測試服務介紹 端到端性能測試與性能監(jiān)控方案,開源性能壓力測試工具介紹,早期:Jmeter、The Grinder Tsung Gatling,Tsung,http://tsung.erlang-pr
40、ojects.org/ Jabber/XMPP協議90萬并發(fā)jabber用戶(使用4個節(jié)點的tsung 集群)(3xSun V240 + 1 Sun V440)10萬并發(fā)用戶(使用3個結點tsung集群)(CPU 800MHz) HTTP and HTTPS協議12萬并發(fā)用戶(使用4個結點的tsung集群)該測試平臺達到每秒3000個請求1000萬并發(fā)用戶,(使用75結點的tsung集群,)并發(fā)超過100萬個請求 目前可以用來測試HTTP,WebDAV,SOAP,PostgreSQL, MySQL, LDAP, and Jabber/XMPP,Gatling,Gatling是一款基于Scala
41、 開發(fā)的高性能服務器性能測試工具,它主要用于對服務器進行負載等測試,并分析和測量服務器的各種性能指標。Gatling主要用于測量基于HTTP的服務器,比如Web應用程序,RESTful服務等,除此之外它擁有以下特點: 支持Akka Actors 和 Async IO,從而能達到很高的性能 支持實時生成Html動態(tài)輕量報表,從而使報表更易閱讀和進行數據分析 支持DSL腳本,從而使測試腳本更易開發(fā)與維護 支持錄制并生成測試腳本,從而可以方便的生成測試腳本 支持導入HAR(Http Archive)并生成測試腳本 支持Maven,Eclipse,IntelliJ等,以便于開發(fā) 支持Jenkins,以便于進行持續(xù)集成 支持插件,從而可以擴展其功能,比如可以擴展對其他協議的支持,云性能測試,SOASTA Gomez,NeoLoad的云測試方案,,端到端性能測試與性能監(jiān)控方案,培訓后事項,填寫課程反饋表 刪除桌面臨時文件 關機,陳能技,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 川渝旅游日記成都重慶城市介紹推薦景點美食推薦
- XX國有企業(yè)黨委書記個人述責述廉報告及2025年重點工作計劃
- 世界濕地日濕地的含義及價值
- 20XX年春節(jié)節(jié)后復工安全生產培訓人到場心到崗
- 大唐女子圖鑒唐朝服飾之美器物之美繪畫之美生活之美
- 節(jié)后開工第一課輕松掌握各要點節(jié)后常見的八大危險
- 廈門城市旅游介紹廈門景點介紹廈門美食展示
- 節(jié)后開工第一課復工復產十注意節(jié)后復工十檢查
- 傳統(tǒng)文化百善孝為先孝道培訓
- 深圳城市旅游介紹景點推薦美食探索
- 節(jié)后復工安全生產培訓勿忘安全本心人人講安全個個會應急
- 預防性維修管理
- 常見閥門類型及特點
- 設備預防性維修
- 2.乳化液泵工理論考試試題含答案