如何增加 Google App Engine 中的并发任务数?

我正在使用 App 引擎同时处理许多长时间运行的任务(因此我需要使用基本缩放)。

我注意到一个实例只能同时处理 8 个任务(与 B4 实例的工作人员数量一致)。对于我收到的第九个任务:

POST 503: Request was aborted after waiting too long to attempt to service your request.

如何在不添加更多实例的情况下同时处理比这更多的任务?

奥斯瓦尔多·洛佩兹

作为最佳实践,您指定的工作人员数量应与 App Engine 应用的实例类匹配,但您可以通过修改入口点中的工作人员数量来更改它,如下例所示,并尝试查看它是否适合您.

entrypoint: gunicorn -b :8080 -w 2 main:app

max_instances考虑通过在设置参数中设置最大实例数来配置具有基本扩展的服务basic_scaling您可以通过更改为手动扩展来控制实时实例扩展的数量与处理量。

如果您使用基本扩展,App Engine 会尝试保持低成本,即使随着传入请求量的增加,这可能会导致更高的延迟。

如果您通过最小化空闲实例来调整扩展设置以降低成本,那么如果负载意外增加,您将面临出现延迟峰值的风险。

基本扩展类型旨在以延迟为代价最小化成本。您的代码需要根据处理量来扩展工作人员的数量。如果您的代码不处理扩展,如果没有要处理的任务,您就有浪费计算资源的风险;如果您要处理的任务太多,您也会面临延迟的风险。加速请求的一个好方法是使用多个缓存层。

本文有助于处理实例设置并对其进行修改以获得所需的性能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Google App Engine(Python)中,如何增加应用程序服务器的资源?

如何在Node中配置Google App Engine cron任务?

如何从Google App Engine中的延迟任务返回数据

Go如何处理Google App Engine上的并发请求

如何增加Google Compute Engine中根磁盘的大小?

如果调用者是Google App Engine,如何仅在Django中运行Google App Engine cronjobs?

如何在 Google App Engine 中使用任务队列 API?

Google App Engine(Java)TaskQueue API:如何查询正在运行/待处理的任务数?

Google App Engine中的RSA

在Google App Engine上处理并发请求

Google App Engine Java程序并发

Google App Engine。如何查看BlobStore中存储的照片

如何在Google App Engine中动态编译Java类

如何在Google App Engine(Java)中启用会话支持?

如何在JDO / Google App Engine中设置TransactionOptions?

如何刷新在Google App Engine中缓存的User对象?

如何在Google App Engine(Java)中删除索引?

如何在Google App Engine中添加--promote?

如何在Google App Engine灵活环境中运行TensorFlow?

如何在 Eclipse 中创建 Google App Engine 柔性项目

如何在Google App Engine Java中禁用弱密码?

如何在Google App Engine中写入控制台?

如何使实体靠近Google App Engine Objectify中的特定实体?

如何在Google App Engine中解析JSON?

如何在GO,Google App Engine中解析HTML模板

如何在Google App Engine中设置默认版本

如何回滚Google App Engine中的appcfg?

如何处理Google App Engine中的会话?

如何使用python 3.5在Google App Engine中打开文件?