【发布时间】:2017-10-14 10:34:33
【问题描述】:
我使用 jHipster(基于 Spring Boot)构建了 Java Web 应用程序,创建了生产 War 并将其复制到 Amazon Lightsail 服务器(30 天免费版)。
当我运行它时 - 一天中的任何时候 - 它总是在第二天早上关闭。我的日志文件没有关于出现问题的消息。
我用这个命令运行它:setsid /home/ec2-user/teamly/teamly-0.10.0-BETA.war > /home/ec2-user/teamly/teamly-log
我真的很绝望,因为我不知道如何调查这个问题。
服务器已启动,这不是问题。那么是否存在一些内存泄漏、资源问题、jvm 问题或我的运行命令错误?应用上的流量非常低,所以我对此表示怀疑(而且它是在所有用户都睡觉的夜晚)。
有一点我觉得很奇怪,那就是应用程序启动的进程数。见下图。
此外,当我不断刷新页面时,进程的 MEM 正在增加。有时甚至每次刷新 0.1。但它会停止在某个值上。
感谢您的任何建议。我可以提供更多信息,只是现在不知道需要什么。
【问题讨论】:
-
您的命令在我看来是错误的,因为您没有指定 prod 配置文件,还是使用配置文件或环境变量设置它?另外你的日志配置是什么?你能不能在本地运行 prod 配置文件并进行调查,它会更容易。
-
当您使用 prod 参数构建时,它将使用 prod 配置,所以应该没问题。
-
你确定吗?我们谈论的是 2 个不同的东西:maven prod 配置文件(构建)和 spring prod 配置文件(运行时),通常使用
--spring.profiles.active=prod激活。在您的情况下,我认为您的应用程序在默认配置文件下运行,但您可以在日志文件中轻松验证它。 -
日志文件显示以下配置文件处于活动状态:prod,Web 应用程序配置,使用配置文件:prod。但是,即使您使用的是开发配置文件或某种默认配置文件,您的应用也不应该在一天后自行崩溃,对吧?!
-
对,它应该在启动时失败。可能与github.com/jhipster/generator-jhipster/issues/6490 相同的问题
标签: java spring-boot deployment jvm jhipster