Comment résoudre AWS ELB/EC2 HTTP 503 avec les paramètres de délai d'expiration?
Je suis intermittente, mais régulièrement des erreurs 503 (Service Indisponible: serveur de Back-end est à pleine capacité") à partir d'un site composé de 2 t2.instances moyennes derrière un ELB. Aucun n'est en vertu d'particulièrement lourde charge et la surveillance semble normal.
AWS docs ici:
http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ts-elb-error-message.html
dire qu'une cause potentielle est dom paramètres de délai d'attente entre l'ELBE et EC2s: "définir le délai persistant à supérieur ou égal à l'écran de paramètres de délai d'expiration de votre équilibreur de charge"
Conf Apache sur le EC2s a:
- KeepAlive Sur
- 100 MaxKeepAliveRequests
- KeepAliveTimeout 5
Délai d'inactivité sur l'équilibrage de charge est de 60 secondes.
Ce semble, alors, pour être la cause, mais je n'en suis pas sûr à propos de la correction. L'augmentation de l'Apache KeepAliveTimeout n'est pas - je comprends - normalement recommandé, et je suis tout aussi incertain au sujet de l'effet que la réduction du délai d'inactivité sur la ELB aura sur les performances du site.
Quelle est l'approche recommandée? Comment puis-je obtenir une idée de ce que l'idéal paramètres sont pour ma configuration et le type de trafic (actuellement de l'ordre de 30 à 50 demandes/min), il traite?
OriginalL'auteur Wintermute | 2015-04-08
Vous devez vous connecter pour publier un commentaire.
J'permettrait de réduire le délai d'inactivité dans la ELB. Les Clients qui auront besoin pour ouvrir de nouvelles connexions plus souvent, mais ses juste un peu plus lent que la réutilisation d'un keepalive connexion.
Élever le keepalive à 60 Apache permettrait également de résoudre le 503, mais vous devez être prudent à ne pas manquer de connexions ou de la mémoire, en particulier avec le mpm prefork parce que vous aurez beaucoup plus de slots utilisés dans keepalive. Utilisation mpm worker (ou mpm event, si vous avez pas peur de "Ce MPM est expérimentale", avertissement), assurez-vous d'avoir suffisamment élevée MaxClients pour traiter toutes les demandes, mais suffisamment faible pour ne pas exécuter de type mémo.
OriginalL'auteur at0mzk