如您所知,.NET Remoting有一些限制,其中之一是服务器无法通过NAT /防火墙向Internet客户端发送事件。
今天,我有计划改进.NET Remoting,以便服务器可以向互联网客户端发送事件。我不深入研究.NET Remoting,所以我不知道.NET Remoting有这个问题的原因。任何人都可以给我一些解释吗?
我不知道是否可以解决这个问题?
请帮帮我。感谢。
答案 0 :(得分:2)
.NET Remoting确实有其局限性,例如不同网络外的事件和外部客户端无法在不同网络内部访问服务器,因为使用套接字在网络上相互通信,因为序列化/ MarshalByRef对象的反序列化与网络本身联系在一起,因此无法通过防火墙在外部访问...而且它已经很老了,但有四种方法可以解决这个问题,尽管有workarounds到让事件到位......
如果应用程序是遗留的,那么首先尝试使用我的流量重定向代码并检查它是否适用于您的情况可能是值得的...即发送/接收事件......
答案 1 :(得分:1)
.NET Remoting没有安全性或控制权,如果使用.NET远程处理,则期望所有系统都受到攻击。它应该只在一个进程中使用,以允许跨应用程序域边界通信。
而是使用WCF。 WCF提供能够跨越防火墙等的标准和自定义传输。当您从学习曲线开始时,从具有未来的东西开始。