2

我正在尝试使用 gcloud-node 调用 Google Datastore,并且对于非常简单的查询,我始终获得大约 400 毫秒的响应时间。Google AppEngine 状态显示该服务目前正在响应大约 10 毫秒,但我从未低于 200 毫秒。

我已经尝试在 Google Compute 实例和本地运行,并且没有任何显着差异(我没有在 Google AppEngine 上运行)。

我做错了什么还是 Datastore 真的这么慢?

这是我用来测试性能的一个简单程序:

var gcloud = require('gcloud');

var dataset = gcloud.datastore.dataset({
    projectId: 'myProject',
    keyFilename: 'key.json'
});

var calls = 0;

for (var i = 0; i < 10; i++) {
    var call = 'get' + calls++;
    console.time(call);

    dataset.get(dataset.key(['Kind', 'Name']),
        (function(call) {
            return function(err, entities, nextQuery) {
                if (err) { console.log(err); }

                console.timeEnd(call);
            }
        })(call)
    )
}

我得到以下输出:

get1: 654ms
get2: 656ms
get4: 657ms
get0: 668ms
get3: 793ms
get5: 916ms
get6: 919ms
get7: 933ms
get8: 952ms
get9: 1055ms

我试过用谷歌搜索 Datastore 性能,但除了可追溯到 2011 年的投诉外,我发现的很少。

感谢您的任何指点!

4

1 回答 1

1

由于架构差异,Google Cloud Datastore 上的操作目前预计比 App Engine Datastore 上的类似操作花费更长的时间(因此App Engine 系统状态页面不直接适用)。

我们正在积极努力减少延迟差距。有关更新,请在我们的问题跟踪器上关注此问题。

于 2014-11-25T18:09:27.767 回答