我遇到了this blog post,我发现它很棒并且很有启发性,展示了如何对发送到Akka IO套接字服务器的字符串消息进行固定长度的帧定位。我一直在使用一个开放源代码库,我发现here called ScalaBuff,它在协议缓冲区对象上创建了一个漂亮的薄层。通过Akka IO和套接字协议缓冲区消息
我遇到的麻烦是在修改博客作者(找不到直接与他联系的链接)代码以获取长度(4字节序列),然后是protobuf字节数组。我可以担心后来确定哪些消息在网络上,现在我只想让代码使用一条示例消息。
我的问题是,我无法将阿卡IO代码从拉akka ByteStrings转换为能够发送和从protobuf消息拉原始字节。这是我不熟悉使用Akka IO的套接字服务器的症状。我可以与我的protobuf对象的字节表示(一个Zombie Sighting),但我不能从博客的示例工作字节数组而不是字符串。
如果任何人有一些建议,一些示例代码或关于如何从A点(上面提到的博客文章)到B点的输入(一个Akka IO套接字客户端,它将一个protobuf消息发送到Akka IO套接字服务器..我想我有客户端工作..也许),这将是非常棒的。
发现我的问题与Akka IO甚至Scala无关。当我发送时,我发送的是等同于protobuf字节数组的“toString”表示,而不是将实际字节数组正确转换为字符串。 –