對大多數大型系統而言,資料庫往往是最容易出現瓶頸的地方,而通過使用恰當的快取技術可以非常有效地減輕資料庫的負載。
將系統中用到的所有資料進行分類,分別對待不同種類的資料而不是一視同仁,有利於正確地做出快取哪些資料、以及如何快取的決策。
我通常將系統中用到的資料分為四類:恆定不變的資料,只發生增量的資料,偶爾改變的資料,經常改變的資料。
(1)對於恆定不變的資料,採用普通的恆定快取,即這種快取在系統啟動後初始化一次就不再改變了。
(2)對於只發生增量的資料,採用智慧型式的增量快取,如果所要的資料在這種快取中不存在,則該快取會從其它地方(如資料庫)自動載入目標物件並快取起來。
(3)對於偶爾改變的(但不是十分敏感的)資料,採用定時重新整理的快取,如每隔10分鐘重新整理一次。
(4)對於經常改變的資料,則又可以進一步細分:
將資料中變動部分和非變動部分區分開來,而非變動部分又可以封裝為單獨的物件,從而對該「部分」物件採用上述三種方式之一進行快取。
如此,便可最大程度的利用快取,從而可以有效提高系統效能,並明顯減輕資料庫和網路負載。
高效能的大型系統經驗 資料查詢與分頁
本文討論針對大型資料表 記錄數2千萬以上 進行資料查詢與分頁的可行的高效方案。首先,恰當的索引是必須的。沒有索引的支援,在大資料表中進行查詢是不可思議的。關鍵點在於如何建立索引?1.建立正確的聚集索引 clustered index 由於聚集索引的葉子節點就是記錄本身,所以選擇哪個索引為聚集索引非常...
SQL Server資料庫的高效能優化經驗總結
小編以前在做asp及.net的時候經常用到sql server,現在用php雖然大多數時候用mysql,但不泛有些客戶要在原來sql的平台上公升級或相容開發,值得慶幸的是php無所不能,基本上所有的資料庫它都能連線並支援,本文主要向大家介紹的是正確優化sql server資料庫的經驗總結,其中包括在...
SQL Server資料庫的高效能優化經驗總結
本文主要向大家介紹的是正確優化sql server資料庫的經驗總結,其中包括在對其進行優化的實際操作中值得大家注意的地方描述,以及對sql語句進行優化的最基本原則,以下就是文章的主要內容描述。優化資料庫的注意事項 1 關鍵字段建立索引。2 使用儲存過程,它使sql變crqiy得更加靈活和高效。3 備...