今天遇到一个很郁闷的问题,两个子系统之间相互通信,A子系统循环入库,发消息给B子系统,在发消息的地方,做了常规的异常处理:
try{
XXXXXXX
}catch(Exception e){
log.error(XXXX,e);
}
B子系统接受消息。。。。
结果A子系统中完全入库失败,只有1条入库成功,查看日志,发现java.lang.NoClassDefFoundError.. :cry: :cry: :cry: :cry:
竟然直接报error了,于是马上弄了个Throwable来catch。。。
总结: 在子系统之间交互的过程中,交互的地方需要做严格的异常处理,以免被交互的这块流程,影响整个子系统本身的业务 :twisted: :twisted: :twisted: :twisted:
try{
XXXXXXX
}catch(Exception e){
log.error(XXXX,e);
}
B子系统接受消息。。。。
结果A子系统中完全入库失败,只有1条入库成功,查看日志,发现java.lang.NoClassDefFoundError.. :cry: :cry: :cry: :cry:
竟然直接报error了,于是马上弄了个Throwable来catch。。。
总结: 在子系统之间交互的过程中,交互的地方需要做严格的异常处理,以免被交互的这块流程,影响整个子系统本身的业务 :twisted: :twisted: :twisted: :twisted:
本文分享了一次子系统间通信出现错误的经历,探讨了如何通过改进异常处理机制避免因NoClassDefFoundError等错误导致的流程中断。
2373

被折叠的 条评论
为什么被折叠?



