测试了下sqlite的性能

机器配置:termbin.com/gk1y

        $start = microtime(true);
        $num = 1000;
        $step = 10000;
        $count = $step * $num;
        for ($i = 0; $i < $num; $i++) {
            $items = [];
            for ($j = 0; $j < $step; $j++) {
                $items[] = [
                    'name' => uniqid(),
                    'created' => Carbon::now()->format('Y-m-d H:i:s'),
                ];
            }
            Db::table('users')->insert($items);
        }
        $end = microtime(true);
        $output->writeln("insert " . $count/10000 . "w, use " . round($end - $start, 2) . 's');

如上代码,用webman开命令行 10个进程一起跑
原本有5000w数据的基础上,再写1亿条数据,用了大概12分钟

查询的时候比较奇怪,用DB Browser for SQLite查询,count总条数耗时大概3秒,用webman反而只耗时1s

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 2
Flex

你应该在同机器上,用同数据量测一下其他数据库才能形成对比。只测SQLite没啥意义。

3年前 评论
张三 (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!