【发布时间】:2020-09-23 14:15:34
【问题描述】:
尝试将 springboot 应用部署到 Google App Engine(使用 java11 的标准环境,具有可能的最高规格实例)。以下是我们的app.yaml:
runtime: java11
entrypoint: java -jar portal-0.0.1-SNAPSHOT.war
env: standard
instance_class: B8
handlers:
- url: /.*
script: ignored field
manual_scaling:
instances: 1
应用程序在功能上运行良好。
从技术上讲,页面响应延迟是不可预测的(通常很糟糕)!有时响应需要几分之一秒,有时需要 10 秒。这仅在部署到谷歌云时可见,而不是在本地测试中(所有请求在本地部署不到 1 秒)。日志验证控制器内执行代码的时间可以忽略不计。
谷歌搜索后,我找到了运行格式化 curl 查询的建议。连续执行此 curl 查询五次产生以下结果(显示延迟似乎在 time_starttransfer 中):
- time_namelookup: 0.015000time_connect: 0.031000time_appconnect:
0.078000time_pretransfer: 0.078000time_redirect: 0.000000time_starttransfer: 3.844000"time_total: 3.906000
- time_namelookup: 0.015000time_connect: 0.015000time_appconnect:
0.062000time_pretransfer: 0.062000time_redirect: 0.000000time_starttransfer: 7.469000"time_total: 7.547000
- time_namelookup: 0.015000time_connect: 0.031000time_appconnect:
0.109000time_pretransfer: 0.109000time_redirect: 0.000000time_starttransfer: 0.156000"time_total: 0.219000
- time_namelookup: 0.015000time_connect: 0.015000time_appconnect:
0.047000time_pretransfer: 0.047000time_redirect: 0.000000time_starttransfer: 3.781000"time_total: 3.843000
- time_namelookup: 0.000001time_connect: 0.015000time_appconnect:
0.062000time_pretransfer: 0.062000time_redirect: 0.000000time_starttransfer: 0.094000"time_total: 0.094000
任何关于如何测试或隔离潜在问题的想法都将不胜感激。此外,如果有人经历过类似的事情(或运行任何类似的配置而没有问题),我很想知道。
提前致谢。
【问题讨论】:
标签: java spring-boot performance google-app-engine latency