国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

php - mysql進(jìn)行update操作速度慢,如何解決
僅有的幸福
僅有的幸福 2017-05-16 13:07:09
0
2
657

資料庫有個items表,現(xiàn)在要update其中的userid欄位、
語句是UPDATE items SET userid = xxx WHERE userid = 0 limit 1;
已經(jīng)開啟交易來優(yōu)化時間了,但感覺還是太慢了..更新3w條花費(fèi)3分鐘。
早上嘗試建立個temp表,將userid->items陣列存入,然後寫php腳本不停的查詢temp表,然後操作。
但是這樣執(zhí)行多個腳本的時候,只有一個能活下來...而且達(dá)不到監(jiān)控的效果.
現(xiàn)在的想法是,將更新操作分成刪除和插入..正在嘗試
另外問一下,php開發(fā)的話,用什麼做訊息隊列比較好..rabbitmq的php版,找不到文件。 。 。

僅有的幸福
僅有的幸福

全部回覆(2)
我想大聲告訴你

可以用Replace into代替update,也可以用insert into ...on duplicate key update批次更新。

另,附上一個Rabbitmq PHP版本的demo:
https://github.com/yuansir/ra...

僅有的幸福

用 redis 做隊列吧 一般都用這個。你這個sql 慢應(yīng)該是因為limit 試著把所有 要更新的 數(shù)據(jù) 的id取出來 再去更新 會好很多把

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板