首頁  >  文章  >  後端開發  >  詳解Yii如何防止併發導致的更新資料不準

詳解Yii如何防止併發導致的更新資料不準

*文
*文原創
2018-01-03 13:47:051474瀏覽

Yii如何防止並發導致的更新資料不準?本文主要介紹了Yii防止並發導致更新資料不准的簡單解決方案,需要的朋友可以參考下。希望對大家有幫助。

分享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框架批次插入資料的簡單擴充類別

解決Yii框架參數化查詢中IN查詢只能查詢一個的問題

#Yii解決DeleteAll連表刪除錯誤問題

以上是詳解Yii如何防止併發導致的更新資料不準的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn