php 大訪問量 資料重複問題

2021-07-23 12:01:18 字數 376 閱讀 2632

大訪問量,或者受到惡意攻擊的情況,資料庫沒有設計好,很容易產生重複資料。有三個請求,同時到達php,php同時到資料庫查詢,有沒有資料,發現沒有,同時插入3條資料。這麼巧都是同時?事實確實會同時。解決辦法,個人能實現的有3種。

1,通過唯一索引,聯合主鍵限制等。例如,使用者表手機號,郵箱一般都是唯一的。訂單表的訂單號也是唯一。

2,通過鎖表。例如,現在對錶進行插入操作前,php先lock表,結束後在unlock表。鎖表會造成等待時間加長,特別在訪問大的時候。不推薦鎖表。

3,通過佇列。如果三個請求同時到達php,能不能讓他們依次執行呢。佇列服務端監聽埠,三個請求往埠傳送請求,就要遵守佇列的規矩了。

個人覺得,第一種方法是最好的,如果第一次方法不能滿足需求,推薦第三種方法。

大訪問量優化整體思路

對於高效能 請求量大,如何支撐?1方面,要減少請求 對於開發人員 合併css,背景,減少mysql查詢等.2 對於運維 nginx的expires 利用瀏覽器快取等,減少查詢.3 利用cdn來響應請求 4 最終剩下的,不可避免的請求 伺服器集群 負載均衡來支撐.所以,來到第4步後,就不要再考慮減少請...

PHP爬蟲之刷部落格訪問量

本著學以致用的態度,現在想試試用爬蟲技術來刷一刷部落格訪問量。學習交流之用,不要瞎搞。只需把beginurl改為你的部落格列表首頁就可以了 beginurl listpage file get contents beginurl 部落格列表可能有多頁 獲得每一頁的鏈結 pattern su arr ...

統計最近七天的資料訪問量 mysql

最近做了乙個日誌功能,當使用者訪問介面後,會記錄哪個介面,返回結果等資訊,現在想做乙個統計最近七天的訪問介面數量,之前想的有些複雜。首先獲取今天的日期,根據日期查詢數量,再查詢出近七天的數量。後來發現sql可以直接解決,curdate 函式返回當前的日期。curdate 直接返回當天 查詢最近七天的...