我正在为加密的 P2P 架构开发一个低级 UDP 消息传递层,如果有兴趣,您可以在其 github 页面上阅读更多信息。
我已经构建了一个简洁的序列化框架,可以将 POJO 转换为紧凑的 ByteBuffer,还构建了使使用对称和非对称加密相当轻松的各种库。
我现在正在研究消息传递框架,它利用动态代理来实现与 GWT 的 RPC 机制类似的功能。
我的问题是,我很早就决定让序列化机制从 ByteBuffers 读取和写入。我现在发现这有几个问题:
- 您需要在序列化对象之前知道最大字节缓冲区大小
- 它们是可变的,这使得它们容易出错
- 它们与 DatagramPacket 不是特别兼容,并且 DatagramChannel 令人困惑
谁能建议在这个框架中实现序列化的替代方法?