php - 如何解决从 App Engine 生成的“等待太久以尝试为您的请求提供服务错误后请求被中止”
问题描述
一般来说,我们每秒大约有 2 个请求。然而,在我们向 3000 个用户推送通知后,我们突然达到了 120 个请求/秒。不幸的是,这些用户中大约有一半遇到了 5XX 服务器错误,这意味着出现的一半用户遇到了空白页。炒作消失后,再也没有发生服务器错误。
我做了一些研究,似乎是因为启动时间,即实例启动时间太长,因此中止。我检查了我的实例编号,创建了多达 90 个实例,但活动实例在一秒钟后从 40 个下降到 0 个。这个问题只有在请求突然增加时才会出现,但我认为应用引擎应该能够处理这种类型的增加。
我的问题是如何解决这个问题?或者我应该在哪里继续挖掘以找到问题的根源。提前致谢!
解决方案
谢谢大家的帮助,我已经解决了问题。
感谢 Dan Cornilescu,他的评论让我找到了问题的根源,这是因为我没有足够的 min_idle_instances。一旦我在 app.yaml 的自动缩放部分设置了足够数量的 min_idle_instance,我就没有收到任何 5XX 服务器错误。
推荐阅读
- reactjs - 将 React 应用程序导出为静态 HTML
- php - 由于编码错误,从 PHPExcel 下载文件时出错
- android - Android Jetpack Navigation Pass Lambda/Delegate 在 Fragments 之间
- java - Docker:客户端未连接到 Eureka Server
- javascript - 在 `load_node` 之后用更新的 json 数据刷新 jstree
- php - file_exists():open_basedir 限制生效。文件(/tmp/log.htm)不在允许的路径中:
- sql - 错误->有人可以(向新手)解释如何在选择语句中加入子查询之外吗?
- asp.net-core - 在 .NET Core 项目中使用 PackageReference 引用时,nuget 包的默认版本是什么?
- node.js - NodeJS WebSockets (ws) 模块是否实现背压?
- angular - 如何使用 Angular 向 API Gateway 发出 Get 请求?