我们正在开发一个服务器应用程序,它需要同时打开大量 TCP/IP 连接以等待一些小通知。我们计划使用 Windows Azure 云服务来轻松扩展服务器,但我们只有一个疑问。
单个 Windows Azure 工作角色实例可以拥有的最大并发线程数(或等待消息的 tcp/ip 连接)是多少?
我们正在开发一个服务器应用程序,它需要同时打开大量 TCP/IP 连接以等待一些小通知。我们计划使用 Windows Azure 云服务来轻松扩展服务器,但我们只有一个疑问。
单个 Windows Azure 工作角色实例可以拥有的最大并发线程数(或等待消息的 tcp/ip 连接)是多少?
工作角色中的 Windows Azure 实例是由 Azure AppFabric 控制器管理的常规 Windows Server VM。因此,每个服务器在逻辑上可以支持的线程或连接数没有 Azure 特定的限制。
但是,请注意,Azure 中的服务器可以具有不同的大小(功率),并且在物理上能够处理不同数量的正在运行的线程或打开的连接。理论上的最大数量还取决于线程/连接本身(它们占用多少资源是关键)。
在已部署的解决方案上运行负载测试可能有助于您可以打开并充分执行的最大线程/连接数。
此外,由于 Windows Azure 支持横向扩展,您可以使用AzureWatch 之类的工具来监控性能计数器,了解正在运行的线程数或 TCP/IP 连接数,并自动将服务器添加/删除到您的 VM。