码迷,mamicode.com
首页 > 其他好文 > 详细

ARTS打卡计划第二周-Review

时间:2019-04-27 19:45:59      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:第二周   bsp   一个   部分   自己   out   review   注解   分时   

本周review的文章是:https://medium.com/@hakibenita/optimizing-django-admin-paginator-53c4eb6bfca3

改篇文章的题目是:Optimizing Django Admin Paginator,How we finally made Django admin fast for large tables。

django分页的时候,大部分时间都会消耗在求count上,本篇文章提到了几点用于提升大表分页的方法:

1、重写默认的分页实现

2、在计算count的时候,直接写一个比较大的假的记录总数

3、在计算count的时候,如果查询时间大于阈值,设置一个假的count

4、可以先explain一下django 的queryset的执行计划,提前避免过大的查询

5、缓存count

 

这篇文章虽然是针对django的,但是提供了一些很好的思路,在java开发中,如果使用了第三方的mybatis分页插件,很大概率,在计算记录count的时候,是不走索引的。很多框架在计算count的时候,只是使用count(sql)。

这个时候,我们自己去计算这个count,而不是使用默认的分页。第三条其实也非常常用,可以使用spring的事务的timeout注解,也可以使用hystrix的超时机智去控制。第四条提供了一个新的思路,在执行一个sql之前,可以让程序去explain下mysql的执行计划,如果说可能的查询会非常慢的话,能提前知晓,去做替代方案。总之这个文章虽然是讲django的,但是提供了一些非常独特的意见。

ARTS打卡计划第二周-Review

标签:第二周   bsp   一个   部分   自己   out   review   注解   分时   

原文地址:https://www.cnblogs.com/dongqiSilent/p/10779747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!