資料庫有個items表,現在要update其中的userid欄位、
語句是UPDATE items SET userid = xxx WHERE userid = 0 limit 1;
已經開啟交易來優化時間了,但感覺還是太慢了..更新3w條花費3分鐘。
早上嘗試建立個temp表,將userid->items陣列存入,然後寫php腳本不停的查詢temp表,然後操作。
但是這樣執行多個腳本的時候,只有一個能活下來...而且達不到監控的效果.
現在的想法是,將更新操作分成刪除和插入..正在嘗試
另外問一下,php開發的話,用什麼做訊息隊列比較好..rabbitmq的php版,找不到文件。 。 。
我想大声告诉你2017-05-16 13:09:09
可以用Replace into代替update,也可以用insert into ...on duplicate key update批次更新。
另,附上一個Rabbitmq PHP版本的demo:
https://github.com/yuansir/ra...