使用http远程处理C#时吞吐量低

时间:2008-12-17 09:20:03

标签: c# performance proxy remoting

我在C#中使用http远程处理在两个应用程序之间进行通信。 早些时候,当我在一台机器/两台机器上运行这两个应用程序时,它非常慢。 我们有一个代理服务器连接到互联网。我们在IE中设置了“为本地地址绕过代理服务器”,现在当我在一台机器上运行这两个应用程序时,通信速度非常快。 (几乎是10倍)

但是如果我在不同的机器上运行每个应用程序,那么它仍然很慢,就像设置“绕过代理服务器...”之前的情况一样。

任何见解都会有所帮助。

2 个答案:

答案 0 :(得分:1)

您发送的是哪种数据,以及以何种速率发送?您是否正在使用大量远程(MarshalByRefObject)对象的调用?

实际上,使用远程处理很难完全控制数据。就个人而言,我会建议基于消息的东西,例如WCF。这使得系统之间的接口更加明确和可预测。

如果代理是一个夹点,你仍然可以通过proxycfg.exe绕过这个远程地址

答案 1 :(得分:0)

恐怕没有很多远程电话。 单个远程呼叫在不同的机器上需要10秒,而在一台机器上只需350秒。

当我运行proxycfg.exe时,它显示“Direct Access(无代理服务器)”