數(shù)據(jù)庫網(wǎng)站 如何改善網(wǎng)站數(shù)據(jù)庫減慢訪問網(wǎng)站速度慢的問題?
如何改善網(wǎng)站數(shù)據(jù)庫減慢訪問網(wǎng)站速度慢的問題?第一,將熱數(shù)據(jù)放入redis;第二,設置緩沖池大小;第三,讀寫分離;第四,索引字段,分析SQL優(yōu)化慢;第五,選擇好的數(shù)據(jù)庫存儲引擎,考慮某些方法是否需要事務
如何改善網(wǎng)站數(shù)據(jù)庫減慢訪問網(wǎng)站速度慢的問題?
第一,將熱數(shù)據(jù)放入redis;第二,設置緩沖池大??;第三,讀寫分離;第四,索引字段,分析SQL優(yōu)化慢;第五,選擇好的數(shù)據(jù)庫存儲引擎,考慮某些方法是否需要事務;第六,使用樂觀鎖進行頻繁更新;第七,使用數(shù)據(jù)庫連接池;第八,考慮ORM的一級和二級緩存;第九,選擇一個好的數(shù)據(jù)庫存儲引擎數(shù)據(jù)庫磁盤使用SSD,第十,嘗試業(yè)務角度減少數(shù)據(jù)庫請求數(shù)
正如房東所說,分頁查詢在我們的實際應用中非常普遍,而且也是查詢場景中最容易出現(xiàn)問題的場景。例如,對于下面的簡單語句,通常的思考方式是在name、age、register中u在time字段上創(chuàng)建一個復合索引。這樣,條件排序可以有效地利用索引,性能得到快速提高。
如上例所示,當limit子句變?yōu)椤發(fā)imit 100000,50”時,我們會發(fā)現(xiàn),如果只選擇了50條語句,為什么會變慢?
,所以我們會覺得很慢。
通常,在分頁查詢時,可以在上一頁中獲取數(shù)據(jù)標志,以縮小查詢范圍,如時間。我們可以將上一頁的最長時間作為查詢條件的一部分。SQL可以優(yōu)化如下: