
(1)向全棧工程師轉變
應用開(kāi)發(fā)工程師不僅要能開(kāi)發(fā)前端、無(wú)線(xiàn)和后端的代碼,還要具備線(xiàn)上運維能力,包括
排查瀏覽器端的前端問(wèn)題;
排査域名解析和DNS劫持等常見(jiàn)問(wèn)題
解決前端JS的錯誤定位和資源加載限制問(wèn)題;
掌握無(wú)線(xiàn)端的網(wǎng)絡(luò )特性:無(wú)線(xiàn)情況下建立TCP連接的耗時(shí)、數據下載的影響、WiFi和4G以及弱網(wǎng)絡(luò )下的內容適度匹配等;
掌握無(wú)線(xiàn)端請求的全鏈路過(guò)程:包括手機端到基站的接入,從省級網(wǎng)關(guān)出口到服務(wù)端網(wǎng)關(guān)再到應用系統等;
排查無(wú)線(xiàn)端的問(wèn)題:鏈路染色、日志上報、輿情收集等;掌握無(wú)線(xiàn)端的開(kāi)發(fā)技能;
理解服務(wù)端 Nginx、 Cache、 Tomcat等服務(wù)器的配置文件理解JDK的基本配置參數、內存分配方式和GC調優(yōu);
具備線(xiàn)上Java運行環(huán)境的排查技能。包括一些開(kāi)源中間件的報錯定位、操作系統的端口沖突、JWM的異常退出等;
掌握線(xiàn)上應用系統的性能指標,包括網(wǎng)絡(luò )、QPS、RT、線(xiàn)程級的CPU消耗、Load、內存的dump;
熟悉線(xiàn)上網(wǎng)絡(luò )部署架構,應用服務(wù)器和交換機的連接情況、跨機房和跨單元之間的網(wǎng)絡(luò )情況
熟悉CDN的部署分布;
熟悉源站DNS的解析步驟,包括VIP的管理、LVS的流量分配、應用服務(wù)器之間的健康檢查機制等。
以上是工作中經(jīng)常會(huì )遇到的問(wèn)題和常用的技能知識,掌握這些內容對排查線(xiàn)上問(wèn)題非常有幫助。
(2)向全鏈路運維轉變
以前開(kāi)發(fā)人員參與線(xiàn)上運維通常只會(huì )關(guān)注應用系統本身的問(wèn)題和業(yè)務(wù)日志錯誤信息,較少關(guān)注整個(gè)應用的全鏈路問(wèn)題,所以當問(wèn)題出現時(shí),由于信息掌握不全,很難具體定位問(wèn)題。工程師的關(guān)注點(diǎn)應從單系統轉向全鏈路,必須掌握如下內容。
掌握資源依賴(lài)的關(guān)聯(lián)系統:頁(yè)面的資源依賴(lài)情況、JS和CSS如何發(fā)布到CDN節點(diǎn)以及圖片的回源方式等
掌握請求鏈路:掌握無(wú)線(xiàn)請求鏈路上每個(gè)關(guān)鍵環(huán)節的信息透出,能夠根據關(guān)系數據追蹤請求軌跡;頁(yè)面的輸出、信息是如何聚合的、動(dòng)態(tài)內容和靜態(tài)內容頁(yè)面中的異步加載等;請求的來(lái)源和請求的去向。
(3)向工具化和規劃化轉變
工具化能提升效率和把不規范的流程程序化,減少人為操作的出錯概率,它包括如下內容。
信息的輸出要標準化和規范化,包括端上的Log、請求跟蹤、應用日志輸出格式等;
數據的采集要工具化、集中化;數據的統計和分析要多維度化;數據的展示可以個(gè)性化和可視化;
建立長(cháng)期可以跟蹤變化的網(wǎng)站制作基線(xiàn)數據,包括性能、成本、鏈路變更基線(xiàn)。
本文地址:http://www.havencoinwallet.com//article/4549.html