使用dubbo进行远程调用时,遇到xxx must implement java.io.Serializable报错,以及Provider里面需要传递的对象为什么需要实现序列化接口?

1.在使用dubbo进行远程调用时,我们会将Provider(服务提供者)里面所有需要传递给Consumer(服务消费者)的对象实现序列化接口(java.io.Serializable),但这是为什么呢?

在这里插入图片描述

2.我们需要先了解dubbo的传输机制,使用dubbo传递时,Provider和Consumer相当于两个tomcat,也就是两台服务器,而两台服务器之间数据传递是以2进制格式传输,所以Provider里面的所有需要传输的对象都需要实现序列化接口,将对象转为string字符串流然后才能传输。而如果不实现序列化接口就会遇到

xxx must implement java.io.Serializable

相关文章

在网络请求时,总会有各种异常情况出现,我们需要提前处理这...
作者:宇曾背景软件技术的发展历史,从单体的应用,逐渐演进...
hello,大家好呀,我是小楼。最近一个技术群有同学at我,问我...
 一个软件开发人员,工作到了一定的年限(一般是3、4年左右...
当一个服务调用另一个远程服务出现错误时的外观Dubbo提供了多...
最近在看阿里开源RPC框架Dubbo的源码,顺带梳理了一下其中用...