- 正文开始 -
?
Dubbo 作为高性能 RPC(Remote Procedure Call)框架已经成为 Apache 的顶级项目,意味着在全球被数以千计的公司所采用来其实现其分布式架构的互联集成,尤其是在国内更受欢迎。下面根据我们自身遇到的问题,加上用户提供的一些反馈,来大致梳理下 Dubbo 的常见错误及解决方法。
地址找不到:No provider available
找不到服务,这时候可能有这么几种情况:
排查步骤
调用超时:client-side timeout
一般超时是调用端发生在请求发出后,无法在指定的时间内获得对应的响应。原因大概有以下几种情况:
排查和解决步骤
服务端的线程资源耗尽:Thread pool is EXHAUSTED
Dubbo 服务端的业务线程数是 200 个,如果多个并发请求量超过了 200,就会拒绝新的请求,抛出此错误。这种问题有这么几种解决办法:
排查和解决步骤
Hessian 序列化失败:HessianRuntimeException
启动时 Configuration problem: Unable to locate Spring NamespaceHandler for XML schema
表示 Spring 找不到 <dubbo:...> 配置的解析处理器。通常是 Dubbo 的 jar 包没有被引入,请添加对 Dubbo 的依赖;或者是 ClassLoader 隔离,查看是否有使用 OSGI 或其它热加载机制。