優(yōu)惠活動(dòng) - 12周年慶本月新客福利
優(yōu)惠活動(dòng) - 12周年慶本月新客福利
優(yōu)惠活動(dòng) - 12周年慶本月新客福利

網(wǎng)站制作研發(fā)人員的轉(zhuǎn)變

實(shí)際的開(kāi)發(fā)過(guò)程需要很多跨領(lǐng)域的知識(shí)。以工程師為例,開(kāi)發(fā)和運(yùn)維是兩個(gè)崗位的工作,崗位劃分得很細(xì)致,在遇到實(shí)際問(wèn)題時(shí),往往是具備開(kāi)發(fā)和運(yùn)維兩個(gè)領(lǐng)域知識(shí)的工程師,才能更好更快地解決問(wèn)題。我們做性能優(yōu)化,也需要具備前端、服務(wù)端網(wǎng)絡(luò)、運(yùn)維甚至硬件等方面的知識(shí),做優(yōu)化的工程師如果只關(guān)注軟件優(yōu)化就無(wú)法明白硬件的變化(如增加一個(gè)磁盤(pán)或者選擇一個(gè)更好的芯片)能達(dá)到比單純軟件優(yōu)化更好的性能;思維模式的轉(zhuǎn)變?cè)谀撤N程度上比知識(shí)結(jié)構(gòu)還更重要,具備全機(jī)知識(shí)結(jié)構(gòu)的工程師容易有更寬闊的思維模式,更有可能制定出平衡的方案。


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