Java 如何在Amazon EBS(Elastic BeanStalk)上发现内存错误
这是一个棘手的问题-我们有一个Java web应用程序,部署在Amazon ElasticBeanStalk上的Tomcat web服务器上。我们相信我们有一个内存泄漏b/c,JVM似乎每晚都会崩溃,OutOfMemory例外。 问题是在崩溃之后,EBS会自动删除旧的EC2实例并启动一个新实例。所有的日志和信息也被废弃了 我现在正在开发一个定制的CloudWatch度量来监视JVM的内存(您可能会认为应该有一个准备好的度量…),但这不会帮助我生成堆转储Java 如何在Amazon EBS(Elastic BeanStalk)上发现内存错误,java,out-of-memory,amazon-ebs,Java,Out Of Memory,Amazon Ebs,这是一个棘手的问题-我们有一个Java web应用程序,部署在Amazon ElasticBeanStalk上的Tomcat web服务器上。我们相信我们有一个内存泄漏b/c,JVM似乎每晚都会崩溃,OutOfMemory例外。 问题是在崩溃之后,EBS会自动删除旧的EC2实例并启动一个新实例。所有的日志和信息也被废弃了 我现在正在开发一个定制的CloudWatch度量来监视JVM的内存(您可能会认为应该有一个准备好的度量…),但这不会帮助我生成堆转储 有没有人遇到过类似的问题,并且知道如何在E
有没有人遇到过类似的问题,并且知道如何在EBS上捕获这些错误?这听起来确实像是EC2(而不是EBS)实例的异常行为。有趣的是,如果Tomcats倒下,那么机器实例就会受到影响(在停止或终止方面) 我建议诊断如下:
祝你好运。希望这能有所帮助。这听起来确实像是不同寻常的EC2(而不是EBS)实例行为。有趣的是,如果Tomcats倒下,那么机器实例就会受到影响(在停止或终止方面) 我建议诊断如下:
祝你好运。希望这能有所帮助。考虑像Sumologic这样的日志收集服务。您指定的日志文件已收集并可用于联机分析。因此,即使您的EC2实例被替换,您也可以进行取证,以查看它们发生了什么情况考虑使用类似Sumologic的日志收集服务。您指定的日志文件已收集并可用于联机分析。因此,即使您的EC2实例被替换,您也可以进行取证以查看它们发生了什么我不知何故觉得您的问题并不清楚。我们在AmazonEBS上也有我们的tomcat服务器,我有好几次看到内存不足错误,但该错误只会使tomcat崩溃,对EC2实例没有影响。将您的EBS实例视为普通服务器。tomcat中的崩溃永远不会重新启动机器。EBS是弹性beanstalk,而不是存储服务(S3)。EBS的部分功能是自动负载平衡,您可以在其中定义根据当前流量自动启动和终止的最小和最大实例。最小实例数不能低于1,因此如果有一个正在运行的实例,并且tomcat停止响应HTTP请求,那么EBS将自动终止EC2实例并启动一个新实例。这不是EBS最基本的功能吗???我不知怎的觉得你的问题不清楚。我们在AmazonEBS上也有我们的tomcat服务器,我有好几次看到内存不足错误,但该错误只会使tomcat崩溃,对EC2实例没有影响。将您的EBS实例视为普通服务器。tomcat中的崩溃永远不会重新启动机器。EBS是弹性beanstalk,而不是存储服务(S3)。EBS的部分功能是自动负载平衡,您可以在其中定义根据当前流量自动启动和终止的最小和最大实例。最小实例数不能低于1,因此如果有一个正在运行的实例,并且tomcat停止响应HTTP请求,那么EBS将自动终止EC2实例并启动一个新实例。这不是EBS最基本的功能吗???嗨,jowierun,很抱歉反应太晚了。这是EBS的问题,而不是EC2(请参阅我在问题帖子上的评论,EBS的负载平衡是您提到的“一些监控过程”。它运行在顶部