go语言 mysql时间对比,go和php比较mysql的insert速度

本文探讨了在相同环境下,使用Go的beego框架与PHP的yii框架进行100万条数据插入操作的性能比较。初始阶段Go语言速度领先,但随着数据量增加,PHP的性能逐渐追上并超越Go。分析了Go语言在大量数据插入时时间开销增加的原因,并提供了实际运行时间的数据记录。
摘要由CSDN通过智能技术生成

表CREATE TABLE `goods` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(50) NOT NULL COMMENT ‘??‘,

`dateline` int(10) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=2451249 DEFAULT CHARSET=utf8

测试环境,在同一服务器上。

golang :beego框架

php:yii框架

golang:

stmtIns,err := db.Prepare("insert into goods values(?,?,?)")

for i := 0;i<=1000000;i++ {

_,err = stmtIns.Exec(nil,"ddd",time.Now().Unix())

if err != nil {

panic(err.Error())

}

}

php:

for($i=0;$i<=1000000;$i++){$t = time();$sql = "insert into goods values(NULL,‘dddd‘,$t)";if(Yii::app()->db_test->createCommand($sql)->query())echo "1";

}

每次10万条轮替插入表分别记录(id为表自增id)。

go beego:

8.800196552s      id:1-100000

11.11174997s      id:200001-300000

14.917775043s

14.736186824s

15.600297382s

18.168707698s    id1000000-1100000

php yii

18s    id:100001-200000

17s    id:300001-400000

16s    id:1100000-1200000

刚开始go比php快9s多,后面反被PHP快出2s样子。

分别空表插入100万条时间开销:

go

1m26.883778465s 第一次100W条

1m27.344121961s 第二次100W条 id 100w-200w

php:

2m78.8433s  第一次100W条

2m70.77s    id200w-300w

为何不断追加数据的情况下,go语言需要更多时间,而php开销的时间在减少。为啥呢?!

原文:http://www.cnblogs.com/php-devel/p/4096134.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值