簡體   English   中英

什么時候需要擔心並發控制PHP mysql

[英]When to worry about Concurrency control PHP mysql

我有一個關於並發控制的問題,什么時候該擔心。 我創建了一個PHP / MySQL網站(InnoDB)。 我知道如何避免事務問題,但是有了並發控制。

舉例來說,我的網站是一個電子商務,其中包含用戶插入的商品。 當用戶在站點中插入新商品時,數據庫會創建一個productId作為主鍵(由DB自動遞增),並存儲通過表單提交的有關該產品的其他數據。 我正在使用准備好的語句。

我是否需要擔心兩個或多個用戶是否完全同時執行此操作? 是否有可能同時提交兩個或多個項目會弄亂不同行的數據?

為了插入產品,如果問題很重要,則必須使用會話登錄用戶。

預先感謝,馬庫斯。

除非他們寫到完全相同的行,否則我不明白為什么會有任何並發​​問題。 即使他們正在寫同一行,InnoDB仍具有行級別的鎖定,這意味着在用戶完成對行的寫操作之前,該行將被鎖定,從而使后續用戶“等待它”直到鎖被鎖定為止。釋放。 關於“沖突的INSERT查詢”的可能性:如果將新數據插入到使用自動遞增主鍵的表中,則可以確保每次都獲得唯一的ID,這意味着並發永遠不會在INSERT上成為問題。

您可以進行快速表鎖定,這在更新時特別有用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM