Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services Amazon RDS批量插入比本地数据库慢?_Amazon Web Services_Amazon Rds - Fatal编程技术网

Amazon web services Amazon RDS批量插入比本地数据库慢?

Amazon web services Amazon RDS批量插入比本地数据库慢?,amazon-web-services,amazon-rds,Amazon Web Services,Amazon Rds,我编写了一个节点程序,可以批量插入数据库,并为每个完成的插入做一个控制台日志 function insert(){ var sql = "insert into todo (user, content) values (xx, xx);" + "insert into todo (user, content) values (xx, xx);" + "insert into todo (user, content) values (

我编写了一个节点程序,可以批量插入数据库,并为每个完成的插入做一个控制台日志

function insert(){
    var sql = "insert into todo (user, content) values (xx, xx);" +
              "insert into todo (user, content) values (xx, xx);" +
              "insert into todo (user, content) values (xx, xx);" +       
    (.... 4000 lines of insert)

    db.insert(sql,function success(){
        console.log('done');
    });
}

for(i=0;i<10000;i++){
    insert();
}
结果是,当RDS完成一次插入时,我的本地机器已完成24次插入。我试着把我的RDS升级到一个小实例上,没什么不同


我的问题是,为什么亚马逊rds在这种情况下速度较慢。有什么解决方案吗?

我认为问题可能与微实例性能有关。经过一些测试,我们完全从微实例转移到小实例。另一方面,我没有发现任何关于RDS速度的问题,即使是小实例

看看EC2微实例是如何工作的,应该在哪里使用它们:


从我对您的测试用例的理解来看,您的设置基本上类似于第二个图,这不适用于微实例。尝试使用一个小实例,并在那里比较结果。即使它仍然比本地机器上的速度慢,您也会得到类似的结果。

您描述的测试似乎不是一个苹果对苹果的比较。测试本地数据库可以消除任何网络延迟和吞吐量限制。@Bob Kinney。这一点您是对的,但我假设具有相同区域的EC2到RDS应该具有正常的网络延迟。我相信结果会更好,即使是云数据库,除非我遗漏了什么。我也希望如此,但我确实升级到了小实例,并没有注意到它们之间有太大的不同。我可以确认微实例的性能非常差。试用它们是非常糟糕的,因为它肯定不会鼓励你继续使用这项服务。
1) Local machine to local DB. 

2) Amazon EC2 Micro Instance to Amazon RDS Micro Instance from same region

*Both my.cnf leave to default with only max_allowed_packet=500m set.