我已经为此工作了好几个小时,但没有找到任何解决我遇到的问题的方法。
我正在通过带有 basicHttpBinding 的 protobuf 序列化 3000 个 DTO 的列表。我可以看到 WCF 确实在发送带有编码数据的节点。问题是,这个响应的大小约为 1 MB,一旦我逐步完成调用中的最后一个方法,它需要 30 秒才能完成。如果我在列表上执行 .take(100) 响应大约需要 1-2 秒,并且 .take(1) 是即时的。
我尝试使用 protobuf 手动将 3000 条记录列表序列化为内存流,它几乎是瞬时的,这让我相信它与数据传输有关。
这可以在运行服务和站点的任何机器上复制。有任何想法吗?