精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

我發現一個關于Dubbo服務調用的Bug

開發 架構
我在使用Dubbo的過程中遇到了如下錯誤:No provider available for the service,本以為這個是服務提供者不存在,但經過我的排查,別的客戶端是能夠正確使用該服務的,原來背后蘊含Dubbo一個BUG。

理論知識

結合我對Dubbo的理解,通常dubbo調用出現 No provider available for the service xxx,其原因通常如下:

1.服務方未啟動

2.代碼內客戶端和服務端的group、version不匹配

3.有dubbo tag路由過濾,標簽不匹配

4.動態配置過濾,沒有匹配的服務(比如disable等)

但這次遇到一個非以上問題,因此研究了一番,發現了dubbo在實現上有一些瑕疵。

背景

在做JT808協議指令數據上行指令,指令通過808采集平臺(netty長連接),解析后,通過dubbo調用服務,做指令的業務邏輯處理,奇怪是服務存在,但是卻報錯No provider available for the service com.xxx.ioc.api.service.JTService,錯誤截圖如下:

我覺得很奇怪,服務明明是啟動的,也沒有動態配置,為什么服務竟然會很奇怪的找不到呢?然后debug下看了代碼,發現是dubbo編碼階段報錯。

io.netty.handler.codec.EncoderException: java.lang.RuntimeException: Serialized class com.xxx.ioc.codec.util.KeyValuePair must implement java.io.Serializable Java field: private com.xxx.ioc.codec.util.KeyValuePair com.xxx.ioc.protocol.t808.T0900.message.

原來是參數T009的內部類KeyValuePair未實現序列化導致,但是如果是未實現序列化,應該報錯Serialized class xxx must implement java.io.Serializable的錯誤,但是為什么收到的錯誤卻是No provider available for the service xxx,帶著這個問題,分析一波。

分析過程

調用鏈路根據之前自己分析的dubbo transport層記錄,dubbo客戶端調用時序圖如下(可以參考鏈接的泳道圖):

dubbo客戶端的調用的基本流程說明如下:

  • 客戶端經netty pipeline的TailContext處理,業務線程切換到reactor IO線程,業務線程在DefaultFuture.get()阻塞等待響應。
  • dubbo的編碼/解碼是在reactor IO線程處理,編碼拋出異常,消息不會發送給服務方,此時異常(錯誤碼BAD_REQUEST)被被封裝為Response,繼而喚醒業務線程在DefaultFuture.get()阻塞等待。

這里有個疑問,編碼失敗,那么是如何返回響應消息的呢?后面下篇文章分析),在執行com.alibaba.dubbo.remoting.exchange.support.DefaultFuture#returnFromResponse,把異常信息封裝為RemotingException進行拋出,代碼如下:

private Object returnFromResponse() throws RemotingException {
Response res = response;
if (res == null) {
throw new IllegalStateException("response cannot be null");
}
if (res.getStatus() == Response.OK) {
return res.getResult();
}
if (res.getStatus() == Response.CLIENT_TIMEOUT || res.getStatus() == Response.SERVER_TIMEOUT) {
throw new TimeoutException(res.getStatus() == Response.SERVER_TIMEOUT, channel, res.getErrorMessage());
}
throw new RemotingException(channel, res.getErrorMessage());//序列化異常(錯誤碼BAD_REQUEST)被封裝為RemotingException向上拋出
}

重點關注一下調用鏈中的異常處理:

  • 在com.alibaba.dubbo.rpc.protocol.dubbo.DubboInvoker#doInvoke內異常被catch,異常信息被封裝為RpcException(異常code=NETWORK_EXCEPTION)向上拋。
  • 接著在com.alibaba.dubbo.rpc.protocol.AbstractInvoker#invoke內異常RpcException被catch,由于異常code=NETWORK_EXCEPTION,非業務異常代碼,因此異常繼續向上拋。
  • 最后異常RpcException在com.alibaba.dubbo.rpc.cluster.support.FailoverClusterInvoker#doInvoke內被catch,由于是failover失效轉移策略默認重試2次,因此接著嘗試去調用調用其它節點,如果服務的節點數少于重試的次數+1(即3次),則沒有匹配的服務節點,因此在com.alibaba.dubbo.rpc.cluster.support.AbstractClusterInvoker#checkInvokers操作內,會報錯No provider available for the service xxx.

詳細的代碼調用截圖如下所示:

因此就淹沒了序列化異常,導致真正的異常失真。這也是dubbo錯誤提示的一點小問題,如果要修復,解決方法也簡單:FailoverClusterInvoker新增如下方法:

private void checkInvokers(List<Invoker<T>> invokers, Invocation invocation, RpcException le) {
if (invokers == null || invokers.isEmpty()) {
if (le != null) {
throw le;
}
checkInvokers(invokers, invocation);//請求父類
}
}

同時修改方法doInvoke如下:

責任編輯:武曉燕 來源: 中間件興趣圈
相關推薦

2025-02-13 07:00:00

Dubbo-goJava服務端

2017-10-10 15:14:23

BUGiOS 11蘋果

2022-11-30 09:18:51

JavaMyBatisMQ

2021-04-22 07:47:47

JavaJDKMYSQL

2022-05-16 08:42:26

Pandasbug

2018-01-29 21:56:28

Bug程序程序員

2009-08-18 11:01:51

2021-04-28 14:31:35

Dubbo接口日志

2021-09-13 08:41:52

職場互聯網自閉

2022-06-08 08:14:27

Dubbo數據包源代碼

2016-12-14 10:00:44

數據結構編譯器

2022-07-01 08:14:28

Dubbo異步代碼

2024-05-20 08:25:55

2021-09-03 08:50:50

Dubbo服務引用

2021-04-30 07:09:48

SQLP0事故

2009-09-14 17:08:02

WebFormView

2020-05-18 08:42:23

CSS背景圖像前端開發

2022-11-10 09:28:40

框架開發

2019-01-11 09:41:56

網易考拉服務架構微服務

2013-07-29 09:53:57

醫療馬云阿里
點贊
收藏

51CTO技術棧公眾號

波多野结衣家庭教师视频| 日韩av在线发布| 日韩欧美一区二区在线| 成人欧美一区二区三区视频| 精品少妇theporn| 青青草原国产视频| 精品国产亚洲一区二区三区大结局| 国产精品美女视频| 亚洲一区二区三| a天堂中文字幕| 综合另类专区| 久久日韩粉嫩一区二区三区| 国产精品亚发布| 黄色一级大片在线免费观看| 色妞ww精品视频7777| 黄色精品一区二区| 亚洲国产精品毛片| 国产绳艺sm调教室论坛| 亚洲精品影视| 中文字幕亚洲欧美日韩在线不卡| 肉色超薄丝袜脚交| 一区二区乱码| 亚洲三级免费电影| 麻豆亚洲一区| av片免费播放| 首页欧美精品中文字幕| 中文字幕九色91在线| 久久久久久久久久久影视| 成人在线免费观看黄色| av一区二区三区| 91日本在线视频| 国产在线视频第一页| 日韩成人精品一区| 亚洲成av人乱码色午夜| 香港三级日本三级a视频| 国产特黄在线| proumb性欧美在线观看| 国产精品视频久| 国产成人精品一区二三区| 亚洲精品a级片| 国产亚洲精品va在线观看| 国模大尺度视频| 成人精品国产亚洲| 一区二区欧美精品| 亚洲欧美日韩精品久久久| 午夜小视频免费| 麻豆视频观看网址久久| 国内精品一区二区三区四区| 亚洲二区在线播放| 国产精品午夜av| 欧美日韩情趣电影| 91免费黄视频| 午夜成年人在线免费视频| 国产精品免费网站在线观看| 欧美一级片免费观看| 欧美一区二区公司| 国产二区国产一区在线观看| 国产欧美精品在线播放| 免费在线一级片| 欧美日韩亚洲一区三区 | 中文字幕一区二区在线视频| 中文精品视频| 久久亚洲精品一区| 中文天堂资源在线| 亚洲日本三级| 亚洲精品福利在线观看| 看全色黄大色黄女片18| 中文字幕av一区二区三区四区| 91精品一区二区三区在线观看| 日韩手机在线观看视频| 345成人影院| 亚洲国产精品麻豆| 国产精品视频网站在线观看| av在线app| 亚洲欧洲综合另类| 日本亚洲自拍| 天堂在线视频网站| 99久久久无码国产精品| 欧美日韩在线一二三| 国产中文在线| 国产精品久久久一本精品| 欧美一区二区三区在线免费观看| 国产三级视频在线看| 国产日韩精品久久久| 亚洲高清乱码| av网址在线看| 一区二区三区.www| 性一交一乱一伧国产女士spa| sm久久捆绑调教精品一区| 欧美日韩国产精品一区| 激情五月开心婷婷| www.26天天久久天堂| 8x8x8国产精品| 免费观看污网站| 欧美91在线| 国产午夜精品麻豆| 99久久久无码国产精品性| 亚洲aaa级| 日韩视频精品在线| 久久久久久久久久综合| 国产亚洲永久域名| 国产精品啪视频| 国产浮力第一页| 国产精品一区二区果冻传媒| 精品午夜一区二区| 国产永久免费高清在线观看视频| 久久亚洲捆绑美女| 亚洲电影免费| 麻豆av在线播放| 色噜噜狠狠色综合中国| 91精品无人成人www| 免费一区二区三区在线视频| 亚洲精品第一国产综合精品| 亚洲国产精品无码久久久久高潮 | 日韩欧美在线免费| 国产成人精品无码播放| 亚洲精品aⅴ| 亚洲精品视频网上网址在线观看 | 色婷婷综合久久久久中文字幕 | 欧美成年人视频网站欧美| 日本污视频网站| 1024精品一区二区三区| 日韩五码在线| 色综合一区二区| 中文字幕精品一区二区三区在线| 日本精品视频| 亚洲午夜久久久影院| 国产一级片免费观看| 老司机免费视频久久| 成人在线一区二区| 久久综合伊人77777麻豆最新章节| 成人豆花视频| 伊人久久久久久久久久久| 久草资源在线视频| 国产一区二区三区日韩| 国产精品夜夜夜爽张柏芝| av亚洲一区二区三区| 国产丝袜一区视频在线观看| 日韩欧美亚洲视频| 粉嫩一区二区三区性色av| 一区不卡视频| 欧美黄色a视频| 中文字幕在线成人| 日本道在线观看| 国产成人精品一区二| 久久久天堂国产精品| 春色校园综合激情亚洲| 欧美成人a在线| 欧美三级小视频| 久久99久久99小草精品免视看| 日韩国产在线一区| 久久这里只精品| 欧美黄页免费| 久久这里只有精品99| 国产精品久久久久久久久久久久久久久久 | 欧美日韩爱爱视频| 精品久久久中文字幕人妻| 亚洲精品大片www| 成人免费看片载| 欧美精品麻豆| 国产一区精品在线| av影院在线免费观看| 精品亚洲精品福利线在观看| av黄色在线播放| 国产女主播视频一区二区| 精品视频免费在线播放| 怕怕欧美视频免费大全| 国产激情视频一区| 久草中文在线| 欧美亚洲高清一区| 免费在线观看h片| 成人午夜看片网址| 国产欧美在线一区| 九九视频免费观看视频精品 | 亚洲91网站| 97婷婷涩涩精品一区| 亚洲r级在线观看| 亚洲av成人无码网天堂| 亚洲地区一二三色| 亚洲理论片在线观看| 久久精品av麻豆的观看方式| 中文字幕欧美日韩一区二区| 图片一区二区| 欧美激情精品久久久久久久变态 | www.亚洲人| 18禁免费观看网站| 日韩久久综合| 国产综合第一页| 欧美久久天堂| 精品国产一区二区三区久久久狼| 懂色av蜜臀av粉嫩av分享吧| 91国产精品成人| 久久久久久久国产精品毛片| 国产成人精品免费在线| 爱情岛论坛成人| 欧美日韩1区| 亚洲 国产 欧美一区| 日韩精品一级| 国产精品视频免费观看www| 国产深夜视频在线观看| 中文字幕不卡在线视频极品| 亚洲精品18在线观看| 欧洲视频一区二区| 久久精品视频日本| 中文字幕一区二区三区乱码在线| xxxx黄色片| 国产精品影视在线| 999精品网站| 99综合视频| www.69av| 欧美3p视频| 欧美一级日本a级v片| 成人av综合网| 国产精品88a∨| aa级大片免费在线观看| 久久影视电视剧免费网站清宫辞电视 | 久久亚洲国产成人精品性色| 精品黄色免费中文电影在线播放| 亚洲精品乱码久久久久久金桔影视| 日本成人一级片| 丰满岳妇乱一区二区三区| 欧美日韩在线观看免费| 最新国产精品久久精品| 在线观看亚洲大片短视频| 国产一区二区毛片| 亚洲另类第一页| 宅男噜噜噜66一区二区| 青青青在线视频播放| 欧美天堂亚洲电影院在线观看| 小说区视频区图片区| 伊人久久大香线蕉| www 成人av com| 日本亚州欧洲精品不卡| 亚洲一区二区三区777| 高清国产一区二区三区四区五区| 国产精品视频xxx| 欧美日韩国产网站| 国产精品白嫩美女在线观看 | 色偷偷88欧美精品久久久| 免费人成视频在线| 一区二区三区高清| 免费在线观看黄色av| 亚洲国产精品一区二区www在线| 国产一级片久久| 婷婷夜色潮精品综合在线| 久久久久久久久久久97| 亚洲高清三级视频| 日本少妇全体裸体洗澡| 五月激情综合网| 国产精品999在线观看| 天天影视涩香欲综合网| 日本五十熟hd丰满| 亚洲午夜精品一区二区三区他趣| 国产精品a成v人在线播放| 亚洲 欧美综合在线网络| 日韩xxx高潮hd| 精品毛片三在线观看| 亚洲av中文无码乱人伦在线视色| 色哟哟精品一区| 一区二区日韩在线观看| 欧美日韩国产影片| 午夜精品一区二区三| 日韩成人在线视频观看| 日韩三级电影网| 中文字幕日韩欧美在线视频| 欧美性天天影视| 欧美激情一区二区三区久久久| 九色porny自拍视频在线播放 | 免费视频成人| 亚洲一区二区三| 欧美成人午夜77777| 亚洲精品一区二区三区不| 日本中文字幕在线不卡| 国产精品99久久久久久有的能看| av在线网站免费观看| av网站免费线看精品| 日韩女同一区二区三区| 国产精品福利一区| 中文字幕一区二区三区手机版| 成人免费在线播放视频| 欧美日韩在线视频免费播放| 欧美日韩亚洲国产一区 | 日韩精品一区二区三区swag| 好吊视频一区二区三区| 日韩av在线直播| 一本一道波多野毛片中文在线| 久久久久久一区二区三区| 蜜臀av在线| 国产极品精品在线观看| 日本精品在线播放| 日本日本精品二区免费| 国产一区二区三区自拍| 成人午夜激情av| 国产精品综合一区二区三区| 成人黄色免费网址| 亚洲欧洲日韩综合一区二区| 欧美日韩精品区| 欧美一级一区二区| 国产三级在线| 亚洲**2019国产| 精品国产鲁一鲁****| 日韩精品久久一区| 最新日韩av| www.日本久久| 日本一区二区三区在线不卡| 99热精品免费| 欧美精品少妇一区二区三区| 欧美伦理影视网| 久久久久久久久久久av| www.久久99| 日韩福利视频| 国产欧美高清| 欧美久久久久久久久久久| 国产精品福利一区| 最近中文字幕在线视频| 亚洲丁香婷深爱综合| 1769免费视频在线观看| 国产精品一二三在线| 国产精品探花在线观看| 欧美大片免费播放| 精品一区二区三区视频| 日本少妇色视频| 亚洲图片欧美色图| 超碰在线观看av| 亚洲欧美成人精品| 成人观看网址| 精品欧美国产一区二区三区不卡| 天天做天天爱天天综合网2021| 九热视频在线观看| 国产亚洲欧美日韩俺去了| 精品人妻无码一区二区性色 | 日本福利专区在线观看| 青青青爽久久午夜综合久久午夜| 爱情岛论坛成人| 国产三级欧美三级| 色老头一区二区| 国产一区二区欧美日韩| 免费亚洲电影| 日韩精品久久一区| 日本视频免费一区| 一级黄色录像毛片| 欧美视频一区二| 天堂аⅴ在线地址8| 国产精品免费福利| 日韩人体视频| 少妇一晚三次一区二区三区| 国产精品 欧美精品| 欧美激情精品久久久久久免费| 欧美伊人久久久久久久久影院| 国产福利在线看| 国产精品香蕉国产| 在线国产一区| 女人扒开腿免费视频app| 一区二区久久久久| 99热这里是精品| 久久久久久久91| 清纯唯美亚洲经典中文字幕| 中国一级黄色录像| 国产精品影视天天线| 日韩黄色三级视频| 精品在线观看国产| 国产精品一区二区免费福利视频| 日韩欧美精品一区二区三区经典| 日本aⅴ免费视频一区二区三区| 999福利视频| 日韩一区国产二区欧美三区| 成人高潮aa毛片免费| 欧美精品七区| 久久精品999| 亚洲熟女www一区二区三区| 亚洲国产精品yw在线观看| 日韩电影免费观| 在线视频福利一区| 国产成人aaa| 国产精品久久久久久人| 中文字幕在线国产精品| www国产精品| 国产高潮免费视频| 中文字幕在线观看不卡视频| www.日韩高清| 国产999精品久久久影片官网| 国产精品7m凸凹视频分类| 中文字幕永久免费| 色吊一区二区三区| 免费av网站在线观看| 久久99精品久久久久久青青日本| 日本va欧美va精品发布| 国产一级特黄aaa大片| 亚洲天堂男人天堂女人天堂| 经典三级久久| 国内外免费激情视频| 欧美极品美女视频| 国产精品探花视频| 97av在线视频免费播放| 日韩精品看片| 国产偷人妻精品一区| 欧美妇女性影城| 日韩三级影视| 97av中文字幕| 国产三级精品三级|