在我目前正在开发的项目中,我有三层。每个图层都由 WCF 服务组成,目前使用 basicHttpBinding 在其下方使用服务。 完成后,该项目将托管在Amazon EC2上。 在同一台计算机上部署服务可能<或非。所以我们不能使用NetNamedPipeBinding。应该配置服务的最佳绑定是什么,以便它们具有高性能,考虑到所有将在云上。
任何指导意见。
答案 0 :(得分:2)
如果您考虑在云中部署服务,那么根据我的要求,安全性和性能是两个主要问题。我建议你使用' WS2007FederationHttpBinding '。这两种问题都完全通过这种绑定类型填充。此绑定基于 WS-Trust 规范提供传输和消息级安全性。它也适用于云,因为此绑定提供基于声明的身份和服务控制访问安全性。
如果我们谈论abt性能,它与 basiHttpBinding 相比有点慢,因为消息级安全性提供了基于令牌的bt我看不出任何重大影响。我正在使用这个绑定从过去1年,从来没有看到任何重大的性能打击。我的所有' WS2007FederationHttpBinding '支持的服务在单个调用中最多返回10K复杂对象。最多花了3到4秒。
限制
如果您仅通过Microsoft技术调用该服务,WS2007FederationHttpBinding 绑定工作正常。如果你想使它独立于平台,那么我看不到除REST Full binding之外的任何选项。在这种情况下,您必须使用“ webHttpBinding ”