我会分享一系列在我开发生涯中积累的有用且容易实现的小技巧,本文是此系列的第一篇。 很多原因都可能导致网站运行缓慢,但这其中最常见的就是在数据库查询耗时太多。目前,数据库查询可能在网页渲染过程中起着很重要的作用(网页上的内容总得从某处获取),但是有时候 一些不必要的亦或没有优化好的查询会影响网页渲染的速度。 例如:
然而有一个简单的机制可以间接的预防并且修复此类问题: 用‘诊断框’在每一个网页显示数据库查询的次数以及消耗的总时间。 下面这个示例是我自己的一个网站(截图 或者 这个页面)底部的一个样例诊断块: Request Details: 我在所有开发项目以及生产环境(用我的账号登陆)中都加了类似的诊断框。对于一个大型网站来说,你很可能想当你从办公室或者VPN访问网站时启用诊断框。如果你愿意的话,诊断框中还可以增加一些更具体的信息(即将运行的查询语句以及其它过程花费的时间等等)。 好处
尾声当然,这些点子不是我发明的,而且有些诊断模式几乎是每个大型网站的常见功能。如果你还没有用到它们,我强烈建议你花点时间去实现它们。有这样的一 个‘诊断盒’不会使你的网站本身变快,但它能在开发人员之间激发一些更好的习惯,并且长期来看,它可能对你的网站的速度有巨大的影响! 有兴趣的可以看下我在上述网站使用的sqlalchemy的 查询计数代码 。 原文链接: Dan Birken 翻译: 伯乐在线 - 塔塔 |