sockets - 在 Azure 中动态打开端口,负载均衡器是否足够智能,能够路由到正确的端口?

标签 sockets tcp azure load-balancing azure-worker-roles

据我所知,我只能在 Azure 应用程序中打开 5 个端点,但如果我动态打开这些端口会怎样?示例:我有一个 WorkerRole<Instances count="2" /> ,然后实例号一在我在“.csdef”文件中声明的 5 个可用端点之一中打开一个套接字,当连接转到“myapp.cloudapp.net”时......该连接是否有机会转到没有监听套接字的第二个实例?

我想是的,由于负载均衡器使用循环调度,它并不关心,它可以将连接转发到第二个,但我可能是错的。

问候。

最佳答案

你猜对了。绝对没有办法将流量引导到特定实例,并且负载均衡器不知道您的实例是否正在运行监听器。实现这一目标的唯一方法是让您的客户端应用程序(连接到 Windows Azure 部署的应用程序)不断重试,直到获得成功的连接。

一般指导是 1) 让每个实例以相同的方式操作,在这种情况下,在每个实例的端口上打开监听器,2) 在将监听器添加到 OnStart() 方法中之前,先在 OnStart() 方法中设置监听器负载均衡器。

关于sockets - 在 Azure 中动态打开端口,负载均衡器是否足够智能,能够路由到正确的端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5351989/

相关文章:

c++ - 无法让 sigaction 工作

java - 从套接字到套接字的零分配复制

python - Ubuntu 上的 ACK 和 TCP 窗口

networking - TCP作为连接协议(protocol)问题

node.js - Bot Framework 机器人在模拟器中工作,但在部署的机器人上获取 Microsoft.Bot.ChannelConnector.BotAPI.ThrowOnFailedStatusCode

azure - 在github中维护K8S资源的最佳实践

android - 在本地网络中发现嵌入式设备?

java - 如何通过xinetd从java服务器获取客户端IP?

C# SSL TcpListener TcpClient

json - 使用 AZ CLI 提取应用服务计划 Azure 资源列表