解决方法
你需要“嗅”它,还是可以在客户端或服务器上部署自定义套接字工厂?
在过去,我创建了一个自定义RMI服务器套接字工厂,它在RMI服务读取的流上创建了一个“tee”.由于RMI运行时通常会读取其中一个流,因此我的代码也获得了JRMP的副本以进行解析.就我而言,我正在以序列化形式记录远程调用,包括它们的参数,以便我可以稍后“重放”它们进行负载测试.仅仅启用RMI日志记录选项还不够.
一个问题是JRMP文档很差,在某些情况下,不准确.另一个原因是许多必要的代码不是核心Java API的一部分.这很复杂.我认为在开始之前我已经很好地理解了RMI,但在完成这个小项目后,我感到惊讶的是我还要学到更多东西.
类似的方法可以应用于Wireshark捕获的应用程序数据,但我从未为Wireshark编写过分析器,我不确定它有多复杂.