我尝试使用gcloud-node调用Google Datastore,对于非常简单的查询,响应时间始终在400ms左右。谷歌AppEngine状态显示,目前该服务的响应时间约为10毫秒,但我的响应时间从未低于200毫秒。
我尝试过在Google Compute实例上运行和在本地运行,没有任何明显的不同(我没有在谷歌AppEngine上运行)。
是我做错了什么,还是数据存储真的这么慢?
下面是我用来测试性能的一个小程序:
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我尝试用谷歌搜索数据存储性能,但除了可以追溯到2011年的投诉之外,我几乎找不到什么。
感谢您的指点!
发布于 2014-11-26 02:09:28
由于架构差异,Google Cloud Datastore上的操作目前预计会比App Engine Datastore上的类似操作花费更长的时间(因此App Engine System Status页面不直接适用)。
我们正在积极努力减少延迟差距。有关更新,请在我们的问题跟踪器上关注this issue。
https://stackoverflow.com/questions/27068888
复制相似问题