yii插入数据库防并发的简单代码

5年以前  |  阅读数:776 次  |  编程语言:PHP 

分享yii的一段有用的代码:

当需要让数据库某字段自增时,比如统计每天的查询量,每次请求后都把request_count+1,

如果这样写:


    $model->request_count++;
    $flag = $model->save();

遇到并发时会不准确,可改为:


    $flag = static::updateAll([
    'report_count' => new \yii\db\Expression("`request_count` + 1")
    ], [
    'id' => $model->id
    ]);

同时开六个进程插入,每个进程增加100次,第一种方法只增加到了587,第二种方法增加到了600。

以上所述是小编给大家介绍的yii插入数据库防并发的简单代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例