Php 编码点火器';s insert_batch()函数的性能和限制?
我正在编写一个通过sms网关发送sms的应用程序,并且(显然)在数据库中保留了一份该消息的副本。到目前为止,为了原型化,我使用Codeigniter的活动记录类将每条消息逐个插入数据库,但对于批量发送消息,我将使用Php 编码点火器';s insert_batch()函数的性能和限制?,php,mysql,performance,codeigniter,Php,Mysql,Performance,Codeigniter,我正在编写一个通过sms网关发送sms的应用程序,并且(显然)在数据库中保留了一份该消息的副本。到目前为止,为了原型化,我使用Codeigniter的活动记录类将每条消息逐个插入数据库,但对于批量发送消息,我将使用insert\u batch()加快整个过程。我说的是每次用户请求1000-5000条短信,甚至更多 我的问题是,insert\u batch()?或者,它用于每个批处理作业的插入次数较少。在一次插入中使用多行进行自定义mysql查询更安全还是更快?使用insert\u batch()
insert\u batch()
加快整个过程。我说的是每次用户请求1000-5000条短信,甚至更多
我的问题是,insert\u batch()?或者,它用于每个批处理作业的插入次数较少。在一次插入中使用多行进行自定义mysql查询更安全还是更快?使用insert\u batch()
插入的行数是否有任何限制
以前有没有其他人用它做过大量的插入?如果是,您有什么经验?插入\u批处理很好,因为您只需使用一个查询将信息插入数据库
这比循环一系列语句要好得多
如您所知,每个语句都是connect->query->close
我建议您只需连接一次数据库,而不是重复连接。Insert\u批处理很好,因为您只需使用一个查询即可将信息插入数据库
这比循环一系列语句要好得多
如您所知,每个语句都是connect->query->close
我建议您只连接一次数据库,而不是重复连接。经过一周的insert\u batch()
测试和处理约1000.000条记录,使用insert\u batch()
我遇到了另一个SO问题中描述的以下问题:
因此,根据我个人的经验,insert_batch()对于10.000+行的大规模插入是不可靠的,因为它有时不能插入所有可能导致db不一致的内容。对于我的表现我没有任何问题,到目前为止我很满意。在安装了CentOS的旧PC(p4 w/1GB RAM)中以大约100秒的速度运行10.000行。经过一周的insert_batch()
测试和处理大约1.000.000条记录后,我遇到了另一个SO问题中描述的以下问题:
因此,根据我个人的经验,insert_batch()对于10.000+行的大规模插入是不可靠的,因为它有时不能插入所有可能导致db不一致的内容。对于我的表现我没有任何问题,到目前为止我很满意。在安装了CentOS的旧PC(带1GB内存的p4)中,以大约100秒的速度运行10000行。当然可以。我知道。这就是我将使用insert_batch()的原因。但实际的问题是,如果insert_batch一次不能处理10-50-100条记录,而是更像5000多条记录,那么我应该期望从中获得什么样的性能。当然。我知道。这就是我将使用insert_batch()的原因。但实际的问题是,如果insert\u batch一次不能处理10-50-100条记录,但更像5000+条记录,那么我应该期望从中获得什么样的性能。在我的expirience中,insert\u batch()有时完全失败,什么也不做,什么也不返回……在我的expirience中,insert\u batch()有时完全失败,什么也不做,什么也不返回。。。