有没有人知道使用 Microsoft 的 WCF 构建的 Web 服务将如何扩展到大量用户?
我正在考虑的级别是 1000 多个客户端用户连接到为我们的应用程序提供业务逻辑的 WCF 服务集合,并且这些服务与数据库通信 - 类似于传统的 3 层架构。
是否有任何特殊的问题会降低性能,或者是否有任何设计经验可以实现这种级别的可扩展性?
有没有人知道使用 Microsoft 的 WCF 构建的 Web 服务将如何扩展到大量用户?
我正在考虑的级别是 1000 多个客户端用户连接到为我们的应用程序提供业务逻辑的 WCF 服务集合,并且这些服务与数据库通信 - 类似于传统的 3 层架构。
是否有任何特殊的问题会降低性能,或者是否有任何设计经验可以实现这种级别的可扩展性?
为了确保您的 WCF 应用程序可以扩展到所需的级别,我认为您可能需要调整您对服务必须满足的统计数据的思考。
您提到为“1000 多个客户用户”提供服务,但要衡量您的服务是否可以在该级别执行,您还需要一些估计的使用数据,这将帮助您计算一些更简单的统计数据,例如您的应用每秒的请求数需要处理。
刚刚完成 WCF 项目的工作后,我们设法在我们的测试硬件上每秒收到 400 个请求,再加上我们预期每个用户每天发出 300 个请求的使用模式表明我们平均每天可以处理 100,000 个用户(假设全天的扁平使用图表)。
此外,由于使 WCF 服务代码无状态是相当普遍的,因此通过添加额外的框来扩展实际的 WCF 代码非常容易,这意味着您的系统的整体性能更可能受到您的业务逻辑和与 WCF 相比,持久层。
可能您首先可以开始考虑的 4 件最重要的事情(除了拥有良好的服务代码之外)与以下项目相关:
他们确实将 WCF 设计为默认安全,因此默认设置非常有限。