IT互联网小助手|收藏|SQL查询优化技巧,提升网站访问速度!( 三 )
缓存有一个生命周期 , 具体地说是实例化对象有一个生命周期 。 如果你正在查看跨请求的查询结果 , 那么你需要实现一个持久对象缓存 。 然而不管怎样 , 你的代码应该负责设置缓存 , 并且当基础数据变更时让缓存失效 。
换位思考
不仅仅是调整查询或添加索引 , 还有其他方法可以加快查询的执行速度 。我们查询的最慢的部分是从客户ID到产品ID再到加入表格所做的工作 , 我们必须为每个客户做到 。
我们是不是可以在需要的时候抓取客户的数据?如果是那样 , 那我们就只需要加入一次 。
您可以通过创建数据表来存储许可数据 , 以及所有许可用户标识和产品标识符来对数据进行非规范化(反规范化)处理 , 并针对特定客户进行查询 。
您需要使用INSERT / UPDATE / DELETE上的MySQL触发器来重建表格(不过这要取决于数据来更改的表格) , 这会显着提高查询数据的性能 。
类似地 , 如果一些连接在MySQL中减慢了查询速度 , 那么将查询分解为两个或更多语句并在PHP中单独执行它们可能会更快 , 然后可以在代码中收集和过滤结果 。Laravel 通过预加载在 Eloquent 中就做了类似的事情 。
如果您有大量数据和许多不同的自定义帖子类型 , WordPress可能会在wp_posts表上减慢查询速度 。如果您发现查询的帖子类型较慢 , 那么可以考虑从自定义帖子类型的存储模型移动到自定义表格中 - 更多内容将在后面的文章中介绍 。
结论
通过这些查询优化方法 , 我们设法将查询从8秒降低到2秒 , 并且将查询次数从4次减少到1次 。 需要说明的是 , 这些查询时间是在我们开发环境运行时记录的, 生产环境速度会更快 。
这对追踪查询缓慢及其修复等问题是一个有用的指南 。优化查询看起来可能像一个可怕的任务 , 但只要你尝试一下 , 并取得一些初步的胜利 , 你就会开始找到错误 , 并希望做出进一步改善 。
如果你有任何优化查询的建议或你喜欢使用的工具? 可以在评论中留言分享给大家 。
推荐阅读
- 行业互联网,科创板|中一签大赚10万?本周打新千万别错过这一家
- 行业互联网|1.5亿元重奖50位青年科学家!可做科研也可还房贷
- 行业互联网|理光发布全新RICOH M C2000,打造恰到好处的新精彩
- 行业互联网|深圳第22届高交会闭幕:一大批新技术新成果集中亮相
- |互联网反垄断能成功吗?
- 行业互联网|2020十大新兴技术揭晓!每一项都可能颠覆我们的生活
- 智能穿戴,语音助手|HiFi级真无线蓝牙耳机,国民好物aigo T10测评
- 行业互联网|英国运输技术论坛发布网络安全标准和指南摘要
- 标杆学习|走进北京小米新总部参观考察-对标小米互联网思维与生态链创新
- IPv|专家:IPv6蕴藏机遇多,是支撑下一代互联网的基础