使用Azure Traffic Manager实现高可用性 [英] Achieving High Availability using Azure Traffic Manager

查看:47
本文介绍了使用Azure Traffic Manager实现高可用性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们已使用默认设置使用Azure Traffic Manager部署了高可用性解决方案.

We have deployed our solution for high availability using Azure Traffic manager with default settings.

为我们选择的路由方法是性能".

Selected routing method for us is Performance.

我们希望,一旦主服务器关闭,用户就会转移到辅助服务器上.但是很遗憾,延迟时间为30秒.在测试中的那30秒钟中,我们发现用户正在不响应问题,并且请求超时.恢复工作几乎需要一分钟.具有30秒TTL的Azure交通管理器通常,我们不会在Facebook或Microsoft网站上观察到这些辍学现象,而这些辍学现象肯定会为高可用性提供解决方案.

We expected that as soon as the primary server is down, the users are transferred to the secondary server. But unfortunately there is a 30 sec delay. For those 30 seconds in our testing we found that users are getting not responding issues and requests time out. It takes almost a minute to get back everything at work. Azure Traffic Manager with 30 second TTL Generally we do not observe these dropouts in Facebook or Microsoft sites which definitely maintain a solution for high availability.

我们是否需要在应用程序中编写代码以优雅地处理这些辍学问题,例如在客户端显示一个对话框,我们很快就会回来等?最好的解决方案是使用户体验变得无缝的最佳解决方案.

Do we need to code in our application to handle these dropouts gracefully, like showing a dialog on client side that we will be back soon etc? What could be the best solution so that user experience is seamless.

推荐答案

由于Azure Traffic Manager是基于DNS的负载平衡器,因此客户端必须等待DNS条目上的TTL通过,然后才能重新查询DNS.这就是您遇到问题的原因.流量管理器本身并不管理通信,而仅管理您的客户端将通过DNS与之通信的服务器

Because Azure Traffic Manager is a DNS based load balancer, the client has to wait for the TTL on the DNS entry to pass before it re-queries the DNS. That is why you are having your problem. Traffic manager doesn't manage the communication per se, just which server your client will communicate to via DNS

Facebook和Microsoft在更深层次的协议上使用负载平衡器(例如在ip地址上进行平衡),因此一旦一个节点退出,负载平衡器便可以切换到另一个,因为它正在接收并重定向所有流量.

Facebook and Microsoft are using a load balancer at a deeper level of protocol (like balancing on an ip address) so as soon as one node drops out, the load balancer can switch to another since it is receiving and redirecting all traffic.

如果可以切换到可以解决问题的Azure负载平衡器(不确定名称).否则,您必须缩短TTL或编写一些代码来刷新dns缓存,然后重试.

If you can switch to a Azure Load Balancer (not sure of the name) that will solve your problem. Otherwise you'd have to shorten your TTL or code something to flush your dns cache and try again.

这篇关于使用Azure Traffic Manager实现高可用性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆