DynamoDB和EC2实例之间的高延迟

时间:2015-10-05 20:24:24

标签: node.js amazon-ec2 amazon-dynamodb

我目前正在使用安装在微EC2实例上的节点应用程序进行一些测试,该实例对DynamoDB执行一些查询,但我注意到单个的总延迟非常高(10秒)。如果我在我的本地机器上尝试相同的节点应用程序,延迟大约是600毫秒,这也很高但更好。我无法ping通dynamodb.eu-west-1.amazonaws.com,但我的EC2实例(也位于爱尔兰)的延迟时间约为45毫秒。发电机潜伏期不应该几乎相同吗?我想我应该期待至少<100ms的延迟......我已经检查过cloudwatch,它显示每个DynamoDB getItem请求的查询时间为10-20ms。所以我想弄清问题是什么,我正在尝试的脚本非常简单,如下所示。

var test = function () {
    var _dyn = new AWS.DynamoDB({ endpoint: new AWS.Endpoint(config.db.host) });
    var params = {
          Key: {
              userId: { S: Date.now().toString() }
          },
          TableName: 'Users',
          ConsistentRead: false
    };
    var start = Date.now();
    console.log('Start Query');
    _dyn.getItem(params, function (err, userData) {
         console.log(err);
         console.log('End Query in ' + (Date.now() - start));
    });
}

test();

我的EC2实例上的测试是使用免费套餐进行的,这是否是> 10秒延迟的可能因素?对于测试,我已将Dynamo表的读取和写入容量单位设置为100,以排除与供应相关的问题。

0 个答案:

没有答案