昨夜公司发版程序,有个dubbo服务打死都调不通,一直报错如下:
Will not attempt to authenticate using SASL(unknow error)
Connected to an old server; r-o mode will be unavailable
各种找啊问题原因,网上也找了不少相关问题,要么就是说防火墙问题,要么说是客户端zk版本与服务端版本不符合。
由于确定防火墙设置ok,并且有部分服务能够调用,很快的就忽略了以上两种情况。
然而。。。最终的排错结果证明,正是因为zk版本不一致(准确说是不在一个大版本内)造成的问题,服务端的dubbo服务注册在了zk3.3.6的版本上,而客户端使用dubbo必须引入的zkclient包却依赖了zk3.4.8的包,最后发现问题,将本地依赖的zk包版本降到3.3.x顺利点火。。。
真心坑啊,记录下来当教训。