dubbo问题总结

任何诡异的现象必然能找到问题原因,程序是不会骗人的

一:

特征

一个对象远程传输,服务端是有值的,到客户端后该字段始终是空

原因

这个是序列化引起的,之前的文章里分析过hessian的序列化问题


特征

今天同事碰到一个奇怪的问题,调用一个远程服务,客户端得到的对象某字段有时有值,有时为空,数据肯定是存在的,从服务端代码来看,肯定不可能为空,序列化没有任何问题。而且他在服务器端代码还打了调用日志,值为空时,日志根本没打出。

原因

让人吐血,他启动了两个dubbo服务,这不是关键的,关键是这两个服务版本不一致,代码有差别,有一个服务器上根本就没有对该对象的为空字段赋值!目前调用dubbo是随机策略,所以会随机调用某个服务器,由于一个赋值了,一个没赋值而且没打日志。导致看到的现象就是客户端调用的结果有时候某字段有值有时候没值并且日志不打出。

猜你喜欢

转载自jameswxx.iteye.com/blog/1452935