我们的应用程序调用,以下远程调用在 20 毫秒。
void getAllBlockValues(out int[] ids, out byte[][] values)
通常需要 2-4 毫秒才能返回呼叫。但在某些情况下,调用需要超过 30 毫秒。服务器日志显示,服务器端仅在 20 毫秒后才收到呼叫。服务器和客户端在同一台机器上运行。
看起来 .Net 远程处理层正在延迟呼叫。
如何确定问题的原因?
是否有任何工具可用于检测远程调用的性能瓶颈(它们在哪里阻塞)?
以下链接包含有关提高远程处理性能的 Microsoft 指南,
http://msdn.microsoft.com/en-us/library/ms998565.aspx
如果您正在寻找 IPC 并且它总是在同一台机器上使用 IPC 通道,它将提供更好的结果