有關(guān)性能的案例分享:5分鐘內(nèi)定位線上問題
譯文【51CTO精選譯文】今天要與各位讀者分享另一則頗有意思的故事。我確信,只要讀者是應(yīng)用所有者,或者負(fù)責(zé)運(yùn)行Web應(yīng)用程序,那么大多數(shù)人都會(huì)有興趣。
我們最近為我們的大多數(shù)實(shí)際運(yùn)行的網(wǎng)站改變了驗(yàn)證服務(wù)。本人負(fù)責(zé)的這個(gè)網(wǎng)站是Compuware APM Community。驗(yàn)證服務(wù)發(fā)生變化是一件大事,我們先在測(cè)試環(huán)境上上測(cè)試了這個(gè)變化,之后才部署到線上的生產(chǎn)環(huán)境。測(cè)試環(huán)境下一切看起來很好。結(jié)果部署到線上環(huán)境之后發(fā)現(xiàn),有一個(gè)方面我們遺漏了,導(dǎo)致特定的用戶組當(dāng)中有幾個(gè)用戶受到了影響,他們現(xiàn)在訪問不了網(wǎng)站上的某些內(nèi)容。
我前前后后花了5分鐘時(shí)間來查找這個(gè)問題、確認(rèn)帶來的影響,并且為我們的操作部門提供了足夠多的信息,以便解決問題。
編者注:本文來自Compuware dynaTrace的團(tuán)隊(duì)博客,以下的操作步驟主要是試用dynaTrace網(wǎng)站監(jiān)測(cè)工具來完成,有產(chǎn)品宣傳的意思在里面。不過重要的是發(fā)現(xiàn)線上環(huán)境問題的一個(gè)思路,這個(gè)思路仍然有一定參考意義。
***個(gè)問題:有沒有問題是我們?cè)跍y(cè)試環(huán)境中沒有發(fā)現(xiàn)的?
打開應(yīng)用程序概況圖后顯示,我們的Community門戶網(wǎng)站上某個(gè)事務(wù)出現(xiàn)的失敗率非常高:
應(yīng)用程序概況圖表明了我們的其中一個(gè)事務(wù)出現(xiàn)的失敗率很高。
先來回答***個(gè)問題:沒錯(cuò),我們確實(shí)遇到了問題!
第二個(gè)問題:究竟是什么問題?
下一步是查看自動(dòng)檢測(cè)到的錯(cuò)誤,這些錯(cuò)誤表明這種問題與HTTP 4xx請(qǐng)求有關(guān)——這意味著,許多用戶訪問幾個(gè)頁面的請(qǐng)求被拒絕:
訪問拒絕問題是導(dǎo)致失敗率很高的根源。
現(xiàn)在,我們完全知道了訪問這些頁面出現(xiàn)了限制問題。至于這是個(gè)實(shí)際的問題還是只是用戶試圖訪問受限制的內(nèi)容,還沒有搞清楚。
第三個(gè)步驟:這是個(gè)實(shí)際的問題嗎?如果是,我能為操作部門提供什么樣的信息以解決問題?
正如前面所說的那樣,這可能是由于許多用戶只是試圖訪問受限制的內(nèi)容——這種情況下,我們覺得這些錯(cuò)誤沒什么大不了,因?yàn)楸緛砭蜁?huì)是這樣。查看了底層的錯(cuò)誤信息(比如異常)后,我們發(fā)現(xiàn),問題實(shí)際上與我們的驗(yàn)證服務(wù)有關(guān)。看來我們?cè)诟挠眯碌尿?yàn)證系統(tǒng)之后沒有把所有的安全組遷移過去:
異常詳細(xì)信息表明,我們的安全組遇到了一個(gè)問題。
這些信息足以讓操作部門搞清楚為什么這些安全組沒有被遷移過去。
第四個(gè)問題:哪些用戶受到了影響?我們能夠積極主動(dòng)地聯(lián)系這些用戶、表示歉意嗎?
由于我們現(xiàn)在知道這個(gè)問題出在我們身上,我們想知道哪些用戶受到了影響。作為應(yīng)用程序所有者,我想積極主動(dòng)地聯(lián)系這些用戶,解釋他們看來遇到了問題(盡管他們還沒有報(bào)告這些問題),并且讓他們知道我們正在積極尋求解決辦法。借助我們的用戶體驗(yàn)解決方案,我們完全搞清楚了遇到這些異常的每一個(gè)訪客的具體情況:
受到驗(yàn)證問題影響的訪客
結(jié)束語
幸好,我們?cè)跍y(cè)試環(huán)境測(cè)試了這套系統(tǒng),因而我們得以解決了這方面的問題。但要是能真正看清生產(chǎn)環(huán)境下出現(xiàn)的問題,那就更好了,因?yàn)椴⒉豢偸强赡軠y(cè)試每一種場(chǎng)景。
原文:Field Report: 5 Minutes to Identify a Production Problem and its Impact about:performance