我使用以下方式发送案例类:
tcpActor ! Tcp.Write(MyCaseClass(arg1: Class1, arg2: Class2).data)
然后我收到:
case Tcp.Receive(data: ByteString)
有没有简单的方法来匹配 MyCaseClass 上的数据而不使用低级 java 序列化程序?
我使用以下方式发送案例类:
tcpActor ! Tcp.Write(MyCaseClass(arg1: Class1, arg2: Class2).data)
然后我收到:
case Tcp.Receive(data: ByteString)
有没有简单的方法来匹配 MyCaseClass 上的数据而不使用低级 java 序列化程序?
我不确定akka是否提供任何反序列化二进制数据的工具,到目前为止我还没有找到。一个不错的选择是使用scodec,这在 scala 生态系统中看起来相当不错并且非常流行。顺便说一句,.data
您用来序列化的方法在哪里定义?
您的选择:
1. 使用 Akka 远程处理直接发送案例类
2. 使用 Java 序列化
3. 使用https://github.com/scala/pickling
4. 编写自己的消息协议以在案例类和字节字符串之间进行转换
选择最适合您的用例的。