3 回答

TA貢獻2021條經驗 獲得超8個贊
寫過類似的東西,像這種需要多次更新同一賬號數據的時候,我們的做法是處理完數據后不立即存入mysql,
而是放在了redis中,后面的數據更新都在redis修改,
在redis積累了數千條數據后在異步的寫一次數據到mysql,效果不錯
鹵煮的場景多進程處理建議只負責數據處理,處理完的放redis,在單獨用一個腳本定時檢測redis
達到條件的時候(一定條數或時間)存一次數據到mysql)

TA貢獻1804條經驗 獲得超8個贊
sql優化,數據緩存和頁面靜態化
首先各種優化程序邏輯優化數據庫優化硬件橫向擴展
數據hash、服務器提升性能、表hash、出錢找oraclec出解決方案
頁面靜態化:
Php頁面靜態化有兩種,第一,php模板,比如:smarty。第二,url偽靜態,通過urlrewrite實現這種做法可以提高網站的排名和收索
像一些管理性質的網站,比如:新聞發布系統、CMS等,使用php模板靜態化。一般的網站偽靜態就可以了
數據緩存:
php程序常規的獲取數據的流程是:
1.用戶向php程序發送請求
2.php請求從數據庫中取出數據
3.發送給用戶
但是當網站的訪問量非常大的時候數據庫往往成為制約系統性能的瓶頸,為了減輕大規模請求對數據庫造成的壓力,簡單的方法可以采用數據緩存來減輕數據庫的壓力,下面就簡單的介紹一下常規的數據緩存方法:
具體的步驟:
1.用戶請求
2.判斷緩存是否存在或者是否過期
3.如果緩存不存在或者緩存已經過期,從數據庫中讀出數據;如果沒有過期,讀取緩存
4.發送給用戶
添加回答
舉報