1
我正在構建訂購資源的網站。我有一個資源池(比如10個資源),當用戶想要訂購一個資源時,我檢查哪一個是免費的,並將其分配給用戶。 我使用MYSQL InnoDB表和鎖定使用從池中鎖定資源,同時允許其他人從資源池中訂購其他資源
update ResourceTable SET SOMEFIELD='1'
但是行,如果第一個事務還不完,現在其他用戶正在搜索(使用
select * FROM ResourceTable WHERE SOMEFIELD!='1' LOCK IN SHARE MODE
,用戶正在等待第一筆交易完成(雖然還有其他免費資源) 如果我刪除了LOCK IN SHARE MODE
,我將得到一個應該被鎖定的資源
如何讓多個用戶訂購資源urces沒有等待?
(I雖然不知何故選擇未鎖定的行 - >在不存在MYSQL)
謝謝,但問題是,我正在尋找一個解決方案沒有鎖等待(因爲有其他免費資源) – Guy 2012-09-27 11:36:22