【问题标题】:Strange "Over quota: " error with no further diagnostics奇怪的“超过配额:”错误,没有进一步的诊断
【发布时间】:2014-08-07 11:54:31
【问题描述】:

我正在运行一项并行作业,将数据从 Heroku 复制到 Google Cloud Storage 并最终复制到 Bigquery。我现在这样做的方式是将查询范围 [61500000, 62000000) 中的 ID 的工作拆分为 40 个任务队列任务,并且在每个任务处理程序内部负责子范围说 [ 61500000、61512500)。在每个 taskqueue 任务处理程序中,它生成 3 个 goroutine 来并行查询我们的 Heroku API,以及一个额外的 goroutine 执行插入到 Google Cloud Storage 的操作。 3 HTTP API 输入 goroutine 将数据泵入 GCS 插入 goroutine 的方式是通过 io.Pipe()。

但是,由于某种原因,除了玩具工作负载外,我无法让它工作。几乎每次都会有一些分片因错误而失败:

“发帖https://www.googleapis.com/upload/storage/v1beta2/b/ethereal-fort-637.appspot.com/o?alt=json&uploadType=multipart:超额:”

从 storage.ObjectsInsertCall.Do() 返回。

我检查了所有可能达到收费应用配额的地方: * urlfetch 总限制 developers.google.com/appengine/docs/quotas#UrlFetch * 实例内存developers.google.com/appengine/docs/go/modules/#Go_Instance_scaling_and_class 但仍然找不到原因。 下面我解释一下为什么我排除了上述可能性:

  • urlfetch 总限制 urlfetch 在 3 个 goroutine 中用于向我们的 API 服务器查询 JSON 数据。然后这 3 个 goroutine 处理数据并通过 io.Pipe() 将它们发送到 GCS goroutine。代码看起来像

    cl := urlfetch.Client(c) resp, err := cl.Get("pic-collage.com/...") 如果错误!= nil { 如果 appengine.IsOverQuota(err) { c.Errorf("collageJSONByID over quota: %v", err) } 返回错误 }

但是,虽然我们看到大量“POST www.googleapis.com/upload/storage/v1beta2...: Over quota:”错误,但我们从未看到与 Heroku 的 urlfetches 相关的日志“collageJSONByID ...”服务器。

  • 实例内存 我们将 B1 实例用于我们的作业,它有 128MB 的 RAM。在整个运行过程中,我们从 appengine 控制台看到,每个实例的内存使用量始终远低于 30MB。

我还对"Over quota" when using GCS json-api from App Engine 中描述的服务帐户内的缓存应用了修复,但问题仍然存在。

我想知道我们是否有可能获得有关我们超出的特定 App Engine 配额的更多信息?或者也许还有其他文档中未提及的 Google Cloud Storage 隐藏配额?

【问题讨论】:

  • 有时你的 GOPATH 包可能是最新的,但你的 GOROOT 包不是,所以你需要手动清除它们。 IIRC,当您在 Go 1.2 中拉取一个包但在本地使用 Go 1.3 拉取更新时出现了一个错误。此外,您可能应该更新您的库,以便它们指向 v1 JSON API 端点而不是 beta:groups.google.com/forum/#!topic/gs-announce/xJ0f0fsIS_8

标签: google-app-engine google-cloud-storage


【解决方案1】:

当您达到每日结算限额时,可能会出现Over quota: 消息。如果您为您的应用程序启用了计费,请确保每日预算足够高以支付您的使用量。

【讨论】:

    猜你喜欢
    • 2011-06-08
    • 2020-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 1970-01-01
    相关资源
    最近更新 更多