【发布时间】:2016-03-31 00:26:15
【问题描述】:
我有一个在通过 ElasticBeanStalk 配置的 t2.micro 盒子上运行的服务。每个盒子上的请求数大约为 100ps,平均响应时间在 100ms 以下。
在高流量期间,一些 http 请求失败并出现 503 错误。
在 cloudwatch 中监控服务时会出现很多这样的峰值。由于错误列在 HTTP 5xxs 而不是 ELB 5xxs (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-cloudwatch-metrics.html) 下,因此从框中删除了流量。这导致我测试盒子上的访问日志。在检查 httpd 访问日志时,我看到很多 503 错误,但在 tomcat 的访问日志中没有一个 503 错误。
有什么办法可以解决这个问题吗?
【问题讨论】:
-
发生这种情况时,这些服务器上的 CPU 积分是什么样的?
-
似乎错误出现在 Web 服务器端。你能检查一下httpd服务器加载的静态文件(css、js、图像)是否正确渲染,包括从cdn加载的文件吗?
-
这通常意味着Tomcat没有足够快地响应Apache。超时可能是 30-60 秒。您可能已经超出了微型实例的容量。一旦积分用完,它们的可用 CPU 资源就会显着下降。
-
@harshavmb 我没有我提到的服务的任何静态文件。
标签: apache tomcat amazon-web-services amazon-ec2 amazon-elastic-beanstalk