中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

一個令人糾結的性能性能缺陷

發布時間:2020-07-09 13:57:34 來源:網絡 閱讀:6194 作者:cibsoft 欄目:數據安全

經過一段時間的連續連續加班,持續大概4個月的性能測試項目終于要結束了,現在想想,各種酸甜苦辣都有吧
本次項目我作為一個專職的性能測試人員,我比較幸運,我和其他功能測試人員同時入場了,入場之后,功能測試人員都在忙著熟悉需求、編寫測試案例,而我在熟悉需求的同時編寫性能測試計劃、測試方案以及測試案例,順便忙里偷閑跟著功能測試組學習informatica如何使用,ETL如何測試,畢竟這部分以前沒有接觸過,順便幫功能測試組干點活,就這樣,一個月過去了,性能測試設備到位了,開始安裝環境,一共四臺機器,搭建過環境的朋友都知道,安裝手冊主要是提供思路,想按照安裝手冊一帆風順的裝下去那幾乎是不可能,中間遇到了很多問題,通過百度、求助別人,大概用了8個工作日,環境搭建完成了,接著就是開發測試腳本,這個過程還算順利,不順利的情況在測試執行的時候出現了,當測試執行多用戶并發是,發現只要超過20個用戶登陸,數據庫CPU使用率就到90%左右(當時用的可是32C 64G的機器),難道32C 64G的機器不能支持20個虛擬用戶的并發,大概測試了20個功能點都這樣,如果這個問題不解決,后面的混合場景、穩定性測試、浪涌測試、疲勞測試、容量測試都無法進行,此時距上線大概只有兩周時間了,測試組著急,開發組在修復缺陷的同時也派人專門支持性能測試、開發組在整個過程中也檢查自己是否加了索引,也針對這些功能點重建了索引,行方的質量經理也很著急,雖然大家都很著急,但是問題還沒有解決,行方請來了數據中心的數據庫維護人員,請來的第一位女大俠進行簡單的分析以后,把SGA由之前的12G調整到16G以后忙自己的事情去了,讓我們重新測試,說要是還有問題就把報告打出來,我們經過測試發現此問題還在,第二天晚上加班的時候又請了一位數據中心的人進行診斷,診斷的結果就是oralce啟用了很多進程,和其它并發用戶相同的系統比較,其他系統沒有這么多的進程,至于CPU使用率為什么這么高,暫時還是沒有答案,在此過程中,我在網上進行了各種資料的查詢(那時候白天在客戶現場不能上班,只能晚上回來查詢了,記錄下來,第二天去檢查測試環境是否存在類似的問題),學習了oracle的共享服務器模式還是專有服務器模式,以及網上有人說的一些配置文件的查看,還是沒有解決問題,那時候懷疑可能是安裝問題還是配置文件出問題,因為當時的想法就是請了兩個數據中心的人都沒診斷出問題,那指定不是一般問題,也不是小問題(現在想想,那時候太崇拜技術大拿了),最后抱著試一試的心態在網上在看看,最后通過這樣一個sql語句解決了問題
select sql_text,spid,v$session.program,process from v$sqlarea,v$session,v$process where v$sqlarea.address=v$session.sql_address and v$sqlarea.hash_value=v$session.sql_hash_value and v$session.paddr=v$process.addr and v$process.spid in(PID);
首先使用topas查到消耗CPU比較高的進程,然后獲取進程的ID,講進程id扔在上述sql語句的PID進程處,執行該sql語句,最后抓到了一個sql語句,對sql語句進行了分析,分析了sql語句的執行計劃,發現執行了全表掃面,而且這個sql語句同時從4張表的查詢語句,那這個語句是干嘛的,為什么測試的每個功能點都用用到呢?難道是平臺框架的?也不像啊?
登陸系統,發現登陸完成以后,首頁有好多種提示信息/待辦事宜(類似于個貸系統提示客戶貸款到期、貸款逾期的這種待辦事宜)這下大家恍然大悟了,為什么每個功能點都有類似的問題,只要你登陸完成,系統就會自動查詢,當多用戶并發時,由于sql語句不當的執行計劃導致消耗了更高的CPU,這個問題終于解決了,很開心,這也是自己動手解決的第一個性能問題,以前只是協助定位,系統如期上線了,難道就結束了了嗎?沒有
第一:為什么開發明確說加了索引最后還是索引的問題呢,個人覺得主要是項目周期比較緊,開發流程控制不嚴格,按照開發組的說法在后面要重建索引,但是性能測試要進行性能測試,他們對大部分功能點表添加了索引,忽略了首頁提醒信息/待辦事宜的幾張表
第二:數據中心的人為什么沒有檢查索引的問題呢?太相信開發了,因為這些開發大多數都有10年的工作經驗,所以大家對開發的話深信不疑。
第三:數據中心的人為什么沒有直接打出AWR或者statspack報告而直接調整了SGA呢?也許他們太忙了還是有別的原因,我們不得而知。
第四:為什么數據中心的第二位大拿發現oracle數據庫啟動了那么多進程而并發用戶差不多的另一個系統卻沒有呢,我們系統使用了專有服務器,而另一個系統使用了共享服務器。
通過這個問題,我想說,第一大家不要過分崇拜技術大牛而藐視自己,第二不要百分之百相信開發組或者其他人的話,雖然他們經驗很豐富、你可以表面上相信,但是別忘了實踐時間出真理 第三、發現問題,一定要監控、拿出數據報告說話、畢竟推斷和猜測還是有區別的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新闻| 始兴县| 电白县| 西峡县| 淮安市| 宁武县| 工布江达县| 武强县| 垫江县| 内丘县| 田东县| 中江县| 太原市| 松滋市| 宁陕县| 宣化县| 休宁县| 宁德市| 兴文县| 军事| 龙泉市| 昭平县| 东莞市| 灵台县| 历史| 永寿县| 麻江县| 雅安市| 新化县| 潍坊市| 磴口县| 呼和浩特市| 南宫市| 丁青县| 新安县| 屏东市| 霞浦县| 楚雄市| 香河县| 宿松县| 名山县|