Rey*_*rde 5 node.js google-cloud-datastore google-cloud-platform
当我尝试从(微)计算引擎查询 Google Cloud Datastore 时,通常需要 800 毫秒以上才能得到回复。我得到的最好的是 450 毫秒,最坏的是 > 3 秒。
我的印象是延迟应该低得多(比如 20-80 毫秒),所以我猜我做错了什么。
这是我用来查询的 (node.js) 代码(来自只有一个实体的简单数据存储):
const Datastore = require('@google-cloud/datastore');
const projectId = '<my-project-id>';
const datastoreClient = Datastore({
projectId: projectId
});
var query = datastoreClient.createQuery('Test').limit(1);
console.time('query');
query.run(function (err, test) {
if (err) {
console.log(err);
return;
}
console.timeEnd('query');
});
Run Code Online (Sandbox Code Playgroud)
不确定它是否相关,但我的 app-engine 项目在美国中部地区,我运行查询的计算引擎也是如此。
更新
经过更多测试,我发现您在使用 Google 提供的 Node.js 库时获得的默认身份验证(令牌?)会在大约 4 分钟后过期。
换句话说:如果您使用相同的流程,但在请求之间等待 4 分钟或更长时间,则查询时间将回到 >800 毫秒。
我还尝试使用密钥文件进行身份验证,这似乎做得更好:后续请求仍然更快,但初始请求只需要一半的时间(> 400 毫秒)。
归档时间: |
|
查看次数: |
1803 次 |
最近记录: |