I’m running an application behind an AWS Application Load Balancer with two EC2 instances in an Auto Scaling group.
Both instances show as healthy in the Target Group health checks, but I’m seeing inconsistent behavior where the ALB still routes requests to an instance that is clearly failing at the application level (timeouts, 500s, etc.).
I’ve already checked:
Health check path is correct (/health)
Security groups allow ALB → EC2 traffic
Application logs show intermittent failures but the health endpoint still returns 200
Is there a scenario where the ALB keeps routing traffic to a target even though the application behind it isn’t responding properly?
Should I tighten the health check settings, or is there another configuration I might be missing?
Would appreciate guidance from anyone who has dealt with similar behavior.