【问题标题】:Any compelling reason to stay on WCF?有什么令人信服的理由留在 WCF 上?
【发布时间】:2010-03-06 21:09:06
【问题描述】:

在过去的 2-3 个月里,我一直在尝试创建一个稳定的 Web 服务应用程序。大约 2 个月前,我选择迁移到 WCF 以利用单实例 Web 服务。

自从采取这一举措以来,我在部署到 IIS 6 场景时遇到了一些真正的难题。不幸的是,因为大多数真正的客户端仍然使用 Windows Server 2003 和 IIS 6。我遇到了所有你能想象到的 WCF 错误。

客户的耐心正在消退,很快我们似乎无法提供可靠的解决方案。

我几乎决定回到至少有效的 ASMX 服务,并且没有遭受类似以下问题的影响:

序列已被远程端点终止。已超过用户为特定消息指定的最大重试次数。因此,可靠会话无法继续。可靠会话出现故障。

通信对象 System.ServiceModel.Channels.ReplyChannel 已被中止,无法用于通信

名单还在继续……在我回到 ASMX 之前,是否有任何令人信服的理由坚持使用 WCF,因为按照这种速度,我们可能会因为这项技术而失去大客户?

【问题讨论】:

  • 尝试自托管 ASMX Web 服务 - 尝试连接到 MSMQ 消息队列 - 尝试使用 TCP/IP 而不是 HTTP - 祝你好运!
  • 问题是 - 我没有尝试 WCF,显然设计者打算让客户使用 IIS7,因为在 IIS7 中它就像炸弹一样工作!但我只是不认为它真的适合 IIS6 托管。
  • @Marc s,我不想为我正在处理的这个实现做任何这些事情。首先,我想发布一款以可预测方式运行的软件。
  • 但是说真的:如果您想在 Win2003 Server 上获得可预测的行为 - 为什么不自行托管您的 WCF 服务?与 IIS7 相比,它的性能甚至更好、更流畅 - 说真的!
  • @Marc - 好吧,所以我可能只是个 tekkie,但是拜托,相信我们这些人,我们都在使用计算机,最终可以节省大量时间和金钱。

标签: .net wcf asmx


【解决方案1】:

因为最终网站会迁移到 IIS7?

说真的,如果 WCF 是为 IIS7 构建的似乎在 IIS7 下工作得更好,并且使用 WCF IIS7 没有问题,那么选择听起来很简单。 在客户端有 IIS7 时坚持使用 WCF。否则,将“旧”技术与“旧”技术一起使用。

【讨论】:

  • 接受的答案。从一位开发人员到另一位开发人员,如果您有严格的截止日期并且正在预算您的工时,请避免在 IIS6 中托管 WCF。
  • 在 .NET 4 中 WCF 配置得到了显着改进。 WCF 4 + IIS 7 几乎可以在没有 web.config 的情况下工作。
  • 等不及了,问题是东欧企业界的客户仍然坚持使用Windows 2003 服务器。升级.net 版本是平易近人的,要求客户升级操​​作系统,不是那么容易。 Windows 2003 Server 上的 IIS7,现在很实用。
  • 我不同意 WCF 是为 IIS7 构建的前提
  • @Cheeso 我对它的了解还不够,无法真正回答这个说法,但看起来真正使用它的人有在 IIS7 下没有问题,但在 IIS6 下确实有问题。可以肯定的是,WCF不是严格为 IIS7 制作的,因为它在 IIS6 下工作,但似乎在 IIS7 上使用它比在 IIS6 上更容易。
【解决方案2】:

好的,返回 asmx 完成。我必须说我的压力已经小了很多。

我注意到的第一件事是,整个设置没有那么痛苦。在某个阶段,我在想 - “好的,现在需要配置客户端”,但后来我想“等等 - 没什么可配置的!”

然后我遇到了 1 个超时问题,并且无法弄清楚在配置中设置超时值的位置,然后我记得代码中的“地狱就像设置 Service.Timeout = -1 一样简单”。

asmx 万岁。您不需要波音 747 就能带您穿过公园!

最后免责声明:我实施的服务可能需要 1 小时到 12 小时才能运行。如果我有一项服务可以一次向多个客户端发送少量数据,我想我会接受 WCF。

【讨论】:

  • “ASMX 万岁”?你知道它已经死了,对吧?只有关键错误被修复,被微软明确记录为“遗留技术”?确保您的业务人员没有阅读此帖子!
  • @John - 是的,先生!顺便说一句 - 感谢您迄今为止对我的其他问题的出色回答!在修复过程中真的帮了我很多忙!
猜你喜欢
  • 2010-11-15
  • 2011-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-18
  • 2012-04-11
  • 2010-10-26
  • 2011-01-06
相关资源
最近更新 更多