更新時(shí)間:2021-03-04 來(lái)源:黑馬程序員 瀏覽量:
使用Django開(kāi)發(fā)網(wǎng)站,如何優(yōu)化數(shù)據(jù)庫(kù)?
1、設(shè)計(jì)表時(shí),盡量少使用外鍵,因?yàn)橥怄I約束會(huì)影響插入和刪除性能。
2、使用緩存,減少對(duì)數(shù)據(jù)庫(kù)的訪問(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ù)的查詢次數(shù)。
7、若頁(yè)面只需要數(shù)據(jù)庫(kù)里某一個(gè)兩個(gè)字段時(shí),可以用QuerySet.values()。
8、在模板標(biāo)簽里使用with標(biāo)簽可以緩存Qset的查詢結(jié)果。
猜你喜歡
【AI設(shè)計(jì)】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計(jì)連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運(yùn)營(yíng)】深圳跨境電商運(yùn)營(yíng)畢業(yè)22個(gè)工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運(yùn)維】鄭州運(yùn)維1期就業(yè)班,畢業(yè)14個(gè)工作日,班級(jí)93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開(kāi)發(fā)】上海校區(qū)AI鴻蒙開(kāi)發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開(kāi)發(fā)-Python】畢業(yè)33個(gè)工作日,就業(yè)率已達(dá)到94.55%,班均薪資20763元
2025-09-19【AI智能應(yīng)用開(kāi)發(fā)-Java】畢業(yè)當(dāng)天offer率91%,薪資1W+占比54.2%,班級(jí)均薪12k+
2025-09-19