針對同時控制可以使用memcacheq ,redirs channle 等方式處理這裡我單單的說一下redis 怎麼去控制並發
redis控制並發主要採用redis list api 中的
lLen - 取得清單的長度
lPush - 插入一個值到列表中,如果列表不存在,新建一個清單例如我這邊現在有個搶購的需求。一個商品只運行搶200個 大概思路如下
每次查看 redis 訊息隊列 長度是否已經超過 或 = 200 這種寫法有可能會有多搶的情況。 所以我們這邊後端的單獨起一個程式做佇列處理。如果說數量太多那就後面的不進行處理操作。
當然。這個前端已經進入佇列的使用者。你不能告訴人家您已經搶到了。應該會讓他5分鐘後再去看結果。
這樣處理的數量不會去超出。當然如果並發太大的話可以專門尋找處理並發架構,
如果要求用戶體驗友好那就用socket獲取後端處理結果告訴用戶是否搶到。 redis處理還蠻快的所以不用擔心用戶等待時間過長。
以上就介紹了php redis 並發控制,包含了redis方面的內容,希望對PHP教學有興趣的朋友有幫助。