1,第一点是:开发在建表的时候,建立了外键连接,也就是在建表的时候使用了db_constraint=True 这样在查询数据的话就会慢一点
还有一个就是,使用db_constraint=True之后,删数据比较费事,如果要是有数据关联的话,就删不了
加上db_constraint=True,外键的好处就是安全
建表时候的事例:
2,第二点就是开发在创建表结构的时候,没有给表加索引,也就是db_index=True
db_index=True 索引,这个是让你查询数据库更快的,如果要是有unique=True的时候,就不用再使用db_index=True来家索引了,因为unique=True会自动加索引
事例:
开发一般建表的时候,在什么情况下会用到索引?
一般就是当你这个字段经常会用作查询条件的时候,可以给这个字段加上索引,这样查询的就比较快一些
比如:select * from user where nick='XXXX'
这个nick这个字段就比较常用,咱就可以给这个字段加上索引
排查接口响应速度慢,还有几种原因
接口慢排查:
一般会从以下几个方面入手:
3、针对查询类接口,是不是没有添加缓存
4.是不是接口涉及业务太多,导致程序执行跑很久
5.是不是sql层面的问题导致的数据等待加长,进而拖慢接口
6.网络层面的原因?带宽不足?DNS解析慢
7.确实是代码质量差导致的,如出现内存泄漏,重复循环读取之类