2016-04-15 61 views

回答

1

我还没有尝试过这个,但看着文档,它看起来可以设置对Pub/Sub消息队列计数进行自动调整。

本页[0]解释了如何根据云监控服务提供的标准度量设置自动缩放器的比例。

本页面[1]解释了您可以用于autoscaler的指标。这两个看起来有用:

pubsub.googleapis.com/subscription/num_outstanding_messages pubsub.googleapis.com/subscription/num_undelivered_messages

[0] https://cloud.google.com/compute/docs/autoscaler/scaling-cloud-monitoring-metrics [1] https://cloud.google.com/monitoring/api/metrics

0

不能使用pubsub指标(pubsub.googleapis.com/subscription/num_outstanding_messages或pubsub.googleapis.com/subscription/num_undelivered_messages)。 根据该文档:

用于缩放的有效利用率度量符合以下标准:

  1. 标准度量具有用于RESOURCE_ID一个标签,该标签为每个数据流的值是ID一个实例。

  2. 标准度量标准描述实例的繁忙程度,度量标准值的增加或减少与组中虚拟机实例的数量成比例。

发布订阅指标不符合该标准。

但是,有两种方法可以使用基于发布 - 订阅自动缩放:

  1. 写自己的自定义指标 - 您可以使用gcloud监测API来获取您的发布 - 订阅时间序列数据。比用它来计算您自己的自定义监控指标 - 例如 - 上一次系列值除以您的平均/期望延迟。 您可以在您使用的每个异步队列解决方案中使用此方法。

  2. 仍然在阿尔法,有一个基于订户的自动缩放的gcloud api:https://cloud.google.com/compute/docs/autoscaler/scaling-queue-based。此解决方案仅适用于Google云端pubsub,您不能将其与其他异步队列解决方案一起使用。