gpt4 book ai didi

performance - 用 WCF 替换 COM?

转载 作者:行者123 更新时间:2023-12-02 08:34:25 25 4
gpt4 key购买 nike

有人用 WCF 替换了 COM+ 吗?

性能有改善吗?

其他优势是什么?

最佳答案

多年来,我分别使用 COM+(加上 COM 和 DCOM)和 WCF。这包括使用这两种技术构建大型航空公司预订系统。

WCF 和 COM+ 确实是两种不同的野兽。 COM+ 确实是为 COM 鼎盛时期而构建的。因此,在任何与 COM 配合得很好的环境(如 VB6)中使用它真的很容易。在那些环境中,您无法在开发便利性和性能方面击败它。 COM+ 还为您提供了许多“免费赠品”,例如事务处理。我们使用了很多年,对它非常满意。性能也非常好。

COM+也可以在dotNET中使用,但我从来没有觉得它是一等公民。我总觉得 Microsoft 在 dotNET 中支持 COM+,因为他们也支持。我总觉得有点笨拙。

WCF 是一个 dotNET 野兽。我认为 WCF 的最大优势是灵 active 。您几乎可以插入或构建您可能需要的任何通信协议(protocol)。想要易用性,使用 HTTP。希望对象尽可能紧凑和高性能,使用 TCP 和二进制序列化等。它在 dotNET 世界中发挥良好。 WCF 还有大量“开箱即用”的功能,如事务、队列、安全通道、负载平衡等。但是您必须将其配置为使用非常复杂和神秘的配置文件来使用这些功能。在 COM+ 中,其中大部分只是组件服务中的复选框。

关于性能。如果您遵循所有规则(调用完成时调用 SetComplete,不维护状态等),我总是发现 COM+ 非常快。 WCF 也可以非常快,但您必须确保正确配置它。 WCF 允许您配置一切。这真的很棒,但它也让你很容易把事情搞得一团糟。您在 WCF 中受到的最大打击可能是您的对象序列化(至少根据我的经验)。

正如我所说,WCF 非常灵活。您可以毫不费力地穿过防火墙并跨 Web 或专用 WAN 使用它。尝试用 COM+ 来做(祝你好运,我已经做到了,但这并不容易)。我们使用 WCF 在机场之间通过私有(private)通信网络建立通信,所有这些通信都受到不同方拥有的不同防火墙的保护。

真的,如果您想享受 WCF 的一些好处而不需要所有痛苦,请查看 WebAPI ( http://www.asp.net/web-api )。他们首先在 WCF 之上构建它,以此作为轻松快速地启动和运行 WCF 的一种方式。但我认为它不再与 WCF 相关联。也就是说,它不提供 WCF 的所有功能,如果您需要这些高级功能,您将无法使用 WebAPI。

关于performance - 用 WCF 替换 COM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23269852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com