AWS ELB健康检查和AWS目标组健康检查都用于确保负载均衡器的后端实例处于运行状态。但是它们之间有一些区别。
ELB健康检查只支持一种协议,即HTTP / HTTPS。但是,在目标组中,可以使用其他协议,例如TCP,SSL,HTTP / HTTPS和HTTP2。
另外,目标组中的每个目标都可以具有不同的健康检查设置,而在ELB中,所有目标的健康检查设置都是相同的。
目标组健康检查可以基于HTTP响应代码,身份验证令牌和重定向来确定目标实例的健康状况。通过这种方式,可以更准确地确定目标实例是否应该视为健康实例。ELB健康检查不能提供这种灵活性,因为它只检查TCP连接是否是开放的,然后发送简单的HTTP请求。
示例代码:
ELB健康检查:
health_check = { 'healthy_threshold': '2', 'unhealthy_threshold': '5', 'interval': '30', 'timeout': '5' }
response = client.configure_health_check( LoadBalancerName=load_balancer_name, HealthCheck=health_check )
目标组健康检查:
health_check = { 'HealthyThresholdCount': 3, 'UnhealthyThresholdCount': 3, 'IntervalSeconds': 30, 'TimeoutSeconds': 5, 'Matcher': { 'HttpCode':