我正在将我的Nodejs示例应用程序部署到Google App Engine Flexible env,当我使用Google App Engine Flexible应用程序引擎URL (以appspot.com的形式访问API )时,从mobile data发送响应需要花费大约11秒钟的时间,但其他API则以milisecs的形式发送响应。
而且,只有当我打开我的android应用程序并向服务器发送请求之后,所有请求都处于正常时间之后,时间延迟才会发生,而当我再次打开应用程序并向服务器发送请求时,延迟再次出现。
编辑-我发现
这可能是当您的应用程序仍在引导或升温实例以满足请求并作为加载延迟被调用时造成的。为了避免这种情况,您可以实现健康检查处理程序,如就绪检查,以便应用程序只在准备就绪时才接收到通信量。
这就是为什么我在日志中签入的原因-- readiness检查有时在1 sec中执行,有时在200 ms上执行

有谁能告诉我,我的例子热身有什么不对,因为我不认为冷启动时间会导致这个问题。
编辑2
我还尝试设置min_num_instances: 2,以便至少在加载后,我的2个实例不会再次启动,但是延迟的问题仍然一样。
编辑3
runtime: nodejs
#vm: true
env: flex
automatic_scaling:
min_num_instances: 2
max_num_instances: 3编辑4
我注意到一种奇怪的行为,当我使用这个应用程序包捕获来捕获流量时,所有的https请求(如果我没有启用SSL代理)和所有Http请求都是在milisecs中执行的,而如果不使用这个应用程序,所有的Http/Https请求都需要11到16秒的延迟。
我不知道怎么回事,但是这里有什么证书吗?
编辑5
下面我附上了网络分析器,在这里延迟15秒。

请帮帮忙
发布于 2018-09-07 00:30:14
上一次我检查时,我记得我必须设置一个热身请求处理程序,这样谷歌就可以知道实例已经启动并正在运行,并且可以用来响应调用。请记住,代码必须完全位于yaml文件下的处理程序中指定的端点之下。(这不是第一次有人忘记了)
这里是docs https://cloud.google.com/appengine/docs/standard/python/configuring-warmup-requests --这是特定于python的,但是您也可以在文档中检查其他语言,比如Go、Java等等。
如果问题与客户端有关(每次新客户端生成并调用时,它都会得到延迟),那么它很可能是客户端应用程序本身或初始化、注册或DNS解析的问题。
您还可以尝试使用CURL或类似的方式复制请求,并查看是否与那些您看到的延迟。
https://stackoverflow.com/questions/52129452
复制相似问题