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?

L'augmentation de l'apache délai d'attente doit être fine, derrière ELB, parce que ELB détient les connexions, au lieu de navigateurs qui les détient directement. L'essayer?

OriginalL'auteur Wintermute | 2015-04-08