(1) 設(shè)計(jì)表時(shí),盡量少使用外鍵,因?yàn)橥怄I約束會(huì)影響插入和刪除性能
(2) 使用緩存,減少對(duì)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)
(3) 在 orm 框架下設(shè)置表時(shí),能用 varchar 確定字段長(zhǎng)度時(shí),就別用 text
(4) 可以給搜索頻率高的字段屬性,在定義時(shí)創(chuàng)建索引
(5) Django orm 框架下的 Querysets 本來(lái)就有緩存的
(6) 如果一個(gè)頁(yè)面需要多次連接數(shù)據(jù)庫(kù),最好一次性取出所有需要的數(shù)據(jù),減少對(duì)數(shù)據(jù)庫(kù)的查詢(xún)次數(shù)
(7) 若頁(yè)面只需要數(shù)據(jù)庫(kù)里某一個(gè)兩個(gè)字段時(shí),可以用 QuerySet.values()
(8) 在模板標(biāo)簽里使用 with 標(biāo)簽可以緩存 Qset 的查詢(xún)結(jié)果