搭建前端監(jiān)控系統(tǒng)(五)消息隊(duì)列處理并發(fā),通過(guò)一個(gè)消息暴增引發(fā)的前端線(xiàn)上崩了的問(wèn)題場(chǎng)景來(lái)說(shuō)明:消息隊(duì)列處理并發(fā)的重要性隨著前端監(jiān)控日志搜集的內(nèi)容越來(lái)越多,終于由于公司公眾號(hào)的一波推文,導(dǎo)致了日志的瞬間流量達(dá)到歷史新高,以至于mysql無(wú)法處理如此多的連接,系統(tǒng)崩潰。當(dāng)然,作為日志上傳的服務(wù)器,這個(gè)是必然會(huì)發(fā)生的情況,只是早晚的問(wèn)題。既然出現(xiàn)了并發(fā)問(wèn)題,那么前端工程師們就著手來(lái)處理吧。日志上傳如何緩解高并發(fā)的情況呢?我們分為三個(gè)小點(diǎn)來(lái)處理。webfunny前端監(jiān)控系統(tǒng)JS常見(jiàn)錯(cuò)誤和解決方法集錦。常見(jiàn)的前端監(jiān)控和前端行為分析平臺(tái)
為什么要監(jiān)控頁(yè)面性能?
一個(gè)頁(yè)面性能差的話(huà)會(huì)影響用戶(hù)體驗(yàn)。用戶(hù)打開(kāi)頁(yè)面等待的太久,可能會(huì)直接關(guān)掉頁(yè)面,甚至就不再使用了,這種情況在移動(dòng)端更加明顯,移動(dòng)端用戶(hù)對(duì)頁(yè)面響應(yīng)延遲容忍度很低。
雖然頁(yè)面性能很重要,但是在實(shí)際使用中,頁(yè)面性能差的情況并不少見(jiàn)。首先,在產(chǎn)品的迭代演進(jìn)過(guò)程中,頁(yè)面性能可能會(huì)被忽略,性能隨著版本迭代而有所衰減;其次,性能優(yōu)化是一項(xiàng)復(fù)雜而挑戰(zhàn)的事情,需要明確的優(yōu)化方向和具體的優(yōu)化手段才能快速落地取效。所以我們需要一個(gè)性能監(jiān)控系統(tǒng),持續(xù)監(jiān)控和預(yù)警頁(yè)面性能的狀況,并且在發(fā)現(xiàn)瓶頸的時(shí)候指導(dǎo)優(yōu)化工作。 有效的前端監(jiān)控和js錯(cuò)誤監(jiān)控方案webfunny前端一體化埋點(diǎn)可實(shí)現(xiàn)漏斗分析,支持業(yè)務(wù)做更深度數(shù)據(jù)分析。
前端監(jiān)控系統(tǒng)搭建第一步之購(gòu)買(mǎi)阿里云服務(wù)器(本地部署類(lèi)似)對(duì)于之前沒(méi)有搞過(guò)服務(wù)器的前端來(lái)說(shuō),折騰一個(gè)能運(yùn)行的服務(wù)器,還真是費(fèi)了不少周折。服務(wù)器類(lèi)型:入門(mén)級(jí)(共享)2vCPU、4GB內(nèi)存、帶寬2M(個(gè)人建議2vCpu、2GB內(nèi)存足矣)安裝運(yùn)行環(huán)境:系統(tǒng):Ubuntu1664位硬盤(pán)40G(默認(rèn))安裝nvm安裝使用教程,運(yùn)行前端項(xiàng)目可能會(huì)需要切換node版本,建議提前安裝。安裝PM2安裝使用教程,運(yùn)行node服務(wù)應(yīng)該都知道這個(gè),它是個(gè)node服務(wù)進(jìn)程管理器。安裝JDK(Java運(yùn)行環(huán)境),安裝tomcat,并配置環(huán)境變量,這個(gè)網(wǎng)上教程一大堆。安裝Jenkins安裝教程,下載Jenkins的war包,在tomcat下運(yùn)行,搭建自動(dòng)化部署系統(tǒng)。工欲善其事必先利其器,因?yàn)闀?huì)頻繁的發(fā)布版本,所以這個(gè)建議先安裝好。安裝Mysql數(shù)據(jù)庫(kù)安裝教程,存儲(chǔ)數(shù)據(jù)日志,用于以后的分析。安裝Nginx安裝教程,nginx服務(wù)器用來(lái)做轉(zhuǎn)發(fā),反向代理,以及跨域處理等等。
針對(duì)webfunny整套前端監(jiān)控監(jiān)控系統(tǒng),前端工程師會(huì)疑問(wèn)的問(wèn)題解答:webfunny監(jiān)控這么多東西,不會(huì)影響頁(yè)面的性能,首先webfunny這套監(jiān)控系統(tǒng)我們自己和試用購(gòu)買(mǎi)webfunny的前端工程師已經(jīng)使用很久了,目前沒(méi)有遇到性能上的問(wèn)題。當(dāng)然,也有極個(gè)別的小伙伴反饋說(shuō),拖慢了系統(tǒng)。所以我們?cè)黾恿嗽O(shè)置功能,在使用webfunny前端監(jiān)控時(shí),你可以去除掉大部分的監(jiān)控功能。webfunny前端監(jiān)控居然用node做日志服務(wù),并發(fā)量高了可以扛得住。因?yàn)閚ode處理并發(fā)有著天然的優(yōu)勢(shì),目前,如果是單點(diǎn)部署,可以支持10萬(wàn)+的日活量,如果使用多點(diǎn)部署,效果更佳哦。我們已經(jīng)積極開(kāi)發(fā)出能夠支持百萬(wàn)以上日活量的版本啦,感興趣可以直接到webfunny前端監(jiān)控上體驗(yàn)demo。webfunny前端一體化埋點(diǎn)系統(tǒng),可按項(xiàng)目設(shè)定不同的模型看板,設(shè)定人員權(quán)限,滿(mǎn)足多種數(shù)據(jù)分析需求。
搭建前端監(jiān)控系統(tǒng)(七)之用戶(hù)細(xì)查篇一、如何貫穿用戶(hù)的整個(gè)行為鏈路?這個(gè)很好理解,貫穿用戶(hù)的整個(gè)行為鏈路,就需要一個(gè)單一的key來(lái)標(biāo)識(shí)這個(gè)用戶(hù)。比較簡(jiǎn)單的就是使用UserId了,在通過(guò)webfunny前端監(jiān)控系統(tǒng)「用戶(hù)細(xì)查」的功能模塊,每個(gè)用戶(hù)我都給他傳入一個(gè)userId就可以了串聯(lián)起來(lái)了。但是這種方式有一個(gè)很容易被忽略的弊端:如果這個(gè)項(xiàng)目獲取userId速度比較慢,或者壓根不會(huì)有userId,那么用戶(hù)的行為記錄是不是會(huì)出現(xiàn)缺失呢?或者根本就無(wú)法關(guān)聯(lián)呢?那我們?cè)撊绾我?guī)避這種問(wèn)題呢?webfunny是如何做到的呢?為了規(guī)避以上提出的幾點(diǎn)問(wèn)題,webfunny通過(guò)設(shè)置內(nèi)置id,來(lái)對(duì)所有的用戶(hù)進(jìn)行區(qū)分。然后再通過(guò)userId,將所有的內(nèi)置id關(guān)聯(lián)在一起,這樣一來(lái),只要在用戶(hù)的生命周期過(guò)程中,傳入一次userId,我們就可以關(guān)聯(lián)上用戶(hù)所有的行為記錄了。內(nèi)置ID生成規(guī)則的代碼,感興趣的前端同學(xué)可以到webfunny官網(wǎng)查看本篇博客原文。webfunny前端監(jiān)控在錯(cuò)誤分析功能上,可以看到每個(gè)報(bào)錯(cuò)的變化趨勢(shì),繼而分析出用戶(hù)在哪步操作中發(fā)生了問(wèn)題。前端監(jiān)控和js文件加載錯(cuò)誤監(jiān)控軟件
webfunny埋點(diǎn)系統(tǒng)豐盛數(shù)據(jù)收集,真實(shí)還原用戶(hù)行為軌跡,了解產(chǎn)品真實(shí)使用情況,數(shù)據(jù)驅(qū)動(dòng)產(chǎn)品迭代。常見(jiàn)的前端監(jiān)控和前端行為分析平臺(tái)
前端出現(xiàn)異常的時(shí)候,前端程序員如何快速甩鍋?特別是前端程序員發(fā)現(xiàn)前端報(bào)錯(cuò)的原因是接口報(bào)錯(cuò),這時(shí)候如何把這個(gè)前端報(bào)錯(cuò)的問(wèn)題優(yōu)雅的甩給后端程序員??赡苡行┣岸顺绦騿T會(huì)認(rèn)為接口的報(bào)錯(cuò)應(yīng)該由后臺(tái)來(lái)關(guān)注,統(tǒng)計(jì),并修復(fù)。確實(shí)如此,而且后臺(tái)服務(wù)有了很多成熟完善的統(tǒng)計(jì)工具,完全能夠應(yīng)對(duì)大部分的異常情況,那么為什么還需要前端來(lái)解決接口問(wèn)題呢。原因很簡(jiǎn)單,因?yàn)榍岸耸莃ug的重要發(fā)現(xiàn)位置,報(bào)錯(cuò)發(fā)生時(shí)肯定會(huì)先找到前端程序員來(lái)解決,那么在前端幫后臺(tái)背鍋之前怎么快速優(yōu)雅的"甩鍋"呢?大家有沒(méi)有想過(guò),如果前端程序員都對(duì)自己的項(xiàng)目做了系統(tǒng)的監(jiān)控、報(bào)錯(cuò)都能實(shí)時(shí)反饋展示,就不用擔(dān)心甩鍋的問(wèn)題了。webfunny前端監(jiān)控工具,就是這樣一個(gè)幫助前端程序員來(lái)解決報(bào)錯(cuò)定位的。常見(jiàn)的前端監(jiān)控和前端行為分析平臺(tái)
上海觀(guān)縱科技有限公司是一家集研發(fā)、制造、銷(xiāo)售為一體的****,公司位于上海市奉賢區(qū)望園南路1288弄80號(hào)1904、1909室,成立于2022-11-14。公司秉承著技術(shù)研發(fā)、客戶(hù)優(yōu)先的原則,為國(guó)內(nèi)webfunny前端監(jiān)控,webfunny前端埋點(diǎn),全鏈路應(yīng)用性能監(jiān)控,Argus-IT運(yùn)維監(jiān)控的產(chǎn)品發(fā)展添磚加瓦。公司主要經(jīng)營(yíng)webfunny前端監(jiān)控,webfunny前端埋點(diǎn),全鏈路應(yīng)用性能監(jiān)控,Argus-IT運(yùn)維監(jiān)控等產(chǎn)品,產(chǎn)品質(zhì)量可靠,均通過(guò)傳媒、廣電行業(yè)檢測(cè),嚴(yán)格按照行業(yè)標(biāo)準(zhǔn)執(zhí)行。目前產(chǎn)品已經(jīng)應(yīng)用與全國(guó)30多個(gè)省、市、自治區(qū)。我們以客戶(hù)的需求為基礎(chǔ),在產(chǎn)品設(shè)計(jì)和研發(fā)上面苦下功夫,一份份的不懈努力和付出,打造了webfunny,walkingfunny,argus產(chǎn)品。我們從用戶(hù)角度,對(duì)每一款產(chǎn)品進(jìn)行多方面分析,對(duì)每一款產(chǎn)品都精心設(shè)計(jì)、精心制作和嚴(yán)格檢驗(yàn)。上海觀(guān)縱科技有限公司注重以人為本、團(tuán)隊(duì)合作的企業(yè)文化,通過(guò)保證webfunny前端監(jiān)控,webfunny前端埋點(diǎn),全鏈路應(yīng)用性能監(jiān)控,Argus-IT運(yùn)維監(jiān)控產(chǎn)品質(zhì)量合格,以誠(chéng)信經(jīng)營(yíng)、用戶(hù)至上、價(jià)格合理來(lái)服務(wù)客戶(hù)。建立一切以客戶(hù)需求為前提的工作目標(biāo),真誠(chéng)歡迎新老客戶(hù)前來(lái)洽談業(yè)務(wù)。