问题描述
如图, 数据库保存了5w条数据,现在业务需要确实是需要这么多的数据,现在的做法是一开始将所有的数据查询出来, 然后塞到redis中,然后在从redis里面挨个挨个去处理数据,但是select * from table_name 直接就消耗了36s,这个改如何优化
问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
如图, 数据库保存了5w条数据,现在业务需要确实是需要这么多的数据,现在的做法是一开始将所有的数据查询出来, 然后塞到redis中,然后在从redis里面挨个挨个去处理数据,但是select * from table_name 直接就消耗了36s,这个改如何优化
// 请把代码文本粘贴到下方(请勿用图片代替代码)
提问题都是这么提的吗?直接把考试或面试内容粘贴过来?
"问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
你期待的结果是什么?实际看到的错误信息又是什么?"
先把 * 移除,改成需要的属性,输出过多属性十分占用内存
2 回答1.3k 阅读✓ 已解决
1 回答988 阅读✓ 已解决
2 回答849 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
2 回答906 阅读
1 回答891 阅读
1 回答820 阅读
只有5w条数据, 查询竟然消耗了36s, 是不是数据库机器性能太差?
具体怎么优化要结合具体的业务场景.
比如说你这总数量量是500w条, 你是要在500w条例查出5w条, 可以通过建立索引提高查询速度.
如果要使用缓存, 可以在服务器启动的时候同步读入redis中, 以后如有数据更新同步更新redis即可.