【发布时间】:2018-11-07 13:48:30
【问题描述】:
我有几个 Spring Boot 服务可以在本地完美运行,但它们会在 Google App Engine Flexible 上随机时间后重新启动。这些服务在 Spring Boot 库的帮助下使用 Google Cloud SQL 和 Pub/Sub。
当我部署服务时,它们可以正常工作,但过了一段时间它们会被 App Engine 重新启动。我将它们连接到 Spring Boot 管理员的一个实例,我在堆或磁盘空间或任何这些空间中看不到任何奇怪的东西。有时它们会在几个小时后重新启动,有时会更快。
我尝试将日志记录改为跟踪日志记录,似乎服务重启得更快。
我还注意到健康检查被调用了很多,尽管健康检查的默认配置说它应该是 5 分钟并且连续几次失败的健康检查 google app yaml config。但我从未在日志中看到任何失败的健康检查。
我看到的是健康检查进展顺利(200 回复),然后突然停止记录,几分钟后我看到了
Start command: java -showversion -agentpath:/opt/cdbg/cdbg_java_agent.so=--log_dir
这意味着应用引擎正在尝试再次启动应用。
app.yaml 看起来像:
runtime: java
env: flex
service: x-service
resources:
memory_gb: 1.0
automatic_scaling:
min_num_instances: 1
max_num_instances: 2
env_variables:
SPRING_PROFILES_ACTIVE: "dev"
liveness_check:
path: "/actuator/health"
readiness_check:
path: "/actuator/health"
【问题讨论】:
-
你能分享你的 app.yaml 吗?
-
当然,添加它。没什么特别的
-
抱歉耽搁了,当您在日志上暂停时,或者当您看到此“启动命令”...日志时,您的应用程序是否仍然可以访问?
标签: spring-boot google-app-engine app-engine-flexible