com.alibaba.dubbo.rpc.RpcException: No provider available from registry stable.zk.scsite.net:21異常解決

原文鏈接:
https://copyfuture.com/blogs-details/20200629181409555v24mc4magq748ni

最近發現dubbo消費端一直報下面這樣的error日誌

06-17 15:56:50.749  ERROR default - [orSendTimer-thread-1] c.alibaba.dubbo.monitor.dubbo.DubboMonitor :  [DUBBO] Unexpected error occur at send statistic, cause: No provider available from registry *.*.*.*:端口 for service com.alibaba.dubbo.monitor.MonitorService on consumer 172.*.*.124 use dubbo version 2.8.3, please check status of providers(disabled, not registered or in blacklist)., dubbo version: 2.8.3, current host: 172.*.*.124
com.alibaba.dubbo.rpc.RpcException: No provider available from registry stable.zk.scsite.net:2181 for service com.alibaba.dubbo.monitor.MonitorService on consumer 172.*.*.124 use dubbo version 2.8.3, please check status of providers(disabled, not registered or in blacklist).
	at com.alibaba.dubbo.registry.integration.RegistryDirectory.doList(RegistryDirectory.java:577)
	at com.alibaba.dubbo.rpc.cluster.directory.AbstractDirectory.list(AbstractDirectory.java:74)
	at com.alibaba.dubbo.rpc.cluster.support.AbstractClusterInvoker.list(AbstractClusterInvoker.java:271)
	at com.alibaba.dubbo.rpc.cluster.support.AbstractClusterInvoker.invoke(AbstractClusterInvoker.java:232)
	at com.alibaba.dubbo.rpc.cluster.support.wrapper.MockClusterInvoker.invoke(MockClusterInvoker.java:75)
	at com.alibaba.dubbo.rpc.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:77)
	at com.alibaba.dubbo.common.bytecode.proxy19.collect(proxy19.java)
	at com.alibaba.dubbo.monitor.dubbo.DubboMonitor.send(DubboMonitor.java:127)
	at com.alibaba.dubbo.monitor.dubbo.DubboMonitor$1.run(DubboMonitor.java:72)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.runAndReset$$$capture(FutureTask.java:308)
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

該個error對項目的功能沒有任何影響,但反覆的報錯也是讓人心煩,那麼就解決吧。

原因

沒有啓動監控中心,卻配了監控地址。

解決方案

  1. 把監控中心啓動
  2. 把xml配置中的<dubbo:monitor protocol=“registry”>
  3. properties配置中的dubbo.monitor.protocol=registry去掉

dubbo:monitor

監控中心配置。對應的配置類: org.apache.dubbo.config.MonitorConfig

屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
protocol protocol string 可選 dubbo 服務治理 監控中心協議,如果爲protocol=“registry”,表示從註冊中心發現監控中心地址,否則直連監控中心。 2.0.9以上版本
address string 可選 N/A 服務治理 直連監控中心服務器地址,address=“10.20.130.230:12080” 1.0.16以上版本
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章