我从性能和互操作性的角度对Web服务和远程处理进行了比较,并对此有一些疑问。
1)由于远程处理同时支持TCP和HTTP通道,所以当使用TCP通道时,它使用二进制格式,当使用HTTP时,它使用SOAP格式
2)我们可以在远程处理中使用HTTP协议的二进制格式和使用TCP协议的XML/Soap格式吗
3)由于远程处理支持XML/SOAP格式,这对于任何技术和平台都是普遍接受的,所以它应该提供任何技术/平台的服务器/客户端应用程序之间的互操作性,如果提供的话,那么web服务的用途是什么。据我所知,Webservice相对于remoting的主要优势是互操作性。
4)如果我将远程处理与SOAP和HTTP一起使用,它是会被互联网防火墙以与web服务相同的方式绕过还是仍然受到防火墙的限制。
5)如果将远程处理与Http上的SOAP格式化一起使用,将webservice与HTTP上的SOAP格式化一起使用,是否仍然存在任何性能差异。
6) webservice是否支持二进制格式和TCP协议根据我的理解webservice只支持HTTP协议,但根据一些程序员的观点,堆栈溢出webservice是独立于传输协议的,所以这就像asp.net webservice只工作在http上,而其他技术开发的web服务同时支持http和HTTP。
致敬,Arun Patil
发布于 2011-10-17 19:23:03
如果在HTTP模式下使用远程处理,则可以通过防火墙。
虽然这两个看起来是在做同样的事情,但他们是两个不同的野兽。例如,您可以在远程处理中使用接口类型,例如返回接口的服务,而这在使用ASMX Webservices (较旧的堆栈)或WCF (仅部分支持KnownTypes)时是不可能的,但另一方面,WCF支持多个端点/绑定以及比远程处理更好的安全性和可扩展性模型。
我的建议是,如果你在一个已经在使用远程处理的项目上,坚持使用它,否则使用一种即使不是过时的,也不会获得任何新功能的技术并不是一个非常明智的选择,所以我建议将WCF用于一个新的项目。
https://stackoverflow.com/questions/7791939
复制相似问题