工程背景
工程框架
springcloud
我這邊的一個(gè)基礎(chǔ)依賴 base-utils
因開發(fā)效率問題,重寫了
ribbon的IRule來實(shí)現(xiàn) 本機(jī)與 dev環(huán)境的聯(lián)通。因特殊情況 修改了一點(diǎn)
ribbon源碼內(nèi)的相關(guān)方法。我復(fù)制了
BaseLoadBalancer.java內(nèi)的所有內(nèi)容,放到base-utils內(nèi)的對(duì)應(yīng)的com.netflix.loadbalancer包內(nèi),和源碼內(nèi)一致。對(duì)
base-utils進(jìn)行打包。
這個(gè)時(shí)候經(jīng)過工程A服務(wù)測(cè)試 ,負(fù)載沒有問題,于是我便把這個(gè)依賴的版本打了RELEASE給發(fā)布了。
出現(xiàn)的問題
我在別打服務(wù)工程里引入了這個(gè)版本的依賴后,缺發(fā)現(xiàn)其中一個(gè)服務(wù) 無法正常的進(jìn)行負(fù)載。
經(jīng)過排查,無版本依賴錯(cuò)誤的可能。
解決的思路
兩個(gè)思路:
1.第一時(shí)間感覺到是委派的問題。
2.對(duì)比測(cè)試工程和該工程具體的配置、啟動(dòng)掃描等差異。
委派思路
在進(jìn)行委派相關(guān)功能的調(diào)試時(shí),我發(fā)現(xiàn)lib內(nèi)的依賴在