首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么在中总是有11秒的延迟只出现在最初的请求中?

为什么在中总是有11秒的延迟只出现在最初的请求中?
EN

Stack Overflow用户
提问于 2018-09-01 15:13:59
回答 3查看 1.9K关注 0票数 8

我正在将我的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

代码语言:javascript
运行
复制
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秒。

请帮帮忙

EN

Stack Overflow用户

发布于 2018-09-07 00:30:14

上一次我检查时,我记得我必须设置一个热身请求处理程序,这样谷歌就可以知道实例已经启动并正在运行,并且可以用来响应调用。请记住,代码必须完全位于yaml文件下的处理程序中指定的端点之下。(这不是第一次有人忘记了)

这里是docs https://cloud.google.com/appengine/docs/standard/python/configuring-warmup-requests --这是特定于python的,但是您也可以在文档中检查其他语言,比如Go、Java等等。

如果问题与客户端有关(每次新客户端生成并调用时,它都会得到延迟),那么它很可能是客户端应用程序本身或初始化、注册或DNS解析的问题。

您还可以尝试使用CURL或类似的方式复制请求,并查看是否与那些您看到的延迟。

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52129452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档