你的语句,不会很消耗内存。activeNum是索引就可以了。
当然有cache是最好的。
你的语句,不会很消耗内存。activeNum是索引就可以了。
当然有cache是最好的。
你的语句,不会很消耗内存。activeNum是索引就可以了。
当然有cache是最好的。
1、没看到 数组下标来排序 的代码
2、activeNum 上应有索引(普通索引即可)
3、你知道访问数据库和访问 cache 的区别吗?
将数据库的压力转嫁到 cache 就一定合适吗?
如果有有几十万上百万的数据,那么你的 cache 策略是什么?
1、没看到 数组下标来排序 的代码
2、activeNum 上应有索引(普通索引即可)
3、你知道访问数据库和访问 cache 的区别吗?
将数据库的压力转嫁到 cache 就一定合适吗?
如果有有几十万上百万的数据,那么你的 cache 策略是什么?
排序也可以用到索引,不然数据量很大,不适用索引,你数据库不是崩溃。
1、没看到 数组下标来排序 的代码
2、activeNum 上应有索引(普通索引即可)
3、你知道访问数据库和访问 cache 的区别吗?
将数据库的压力转嫁到 cache 就一定合适吗?
如果有有几十万上百万的数据,那么你的 cache 策略是什么?
目前 activeNum这个字段没有加索引。
EXPLAIN 你的查询指令
MySQL 会给你有益的建议!而不是自己想当然的说
EXPLAIN 你的查询指令
MySQL 会给你有益的建议!而不是自己想当然的说
possible_key 是可被使用的索引,由于你没有对 activeNum 做索引,自然就没有啦
于是 Extra 列就有了 filesort,表示用了一个临时文件来对 activeNum 进行排序
possible_key 是可被使用的索引,由于你没有对 activeNum 做索引,自然就没有啦
于是 Extra 列就有了 filesort,表示用了一个临时文件来对 activeNum 进行排序
每个人都是独立的
你可以试试 单例模式, 把结果存在静态变量中试试
如果查询的量非常大,而数据又不是实时的可以做缓存来处理.但是如果数据又要是实时的 我觉得先找出瓶颈在什么地方,普通的索引等优化这些都是基础。
谢谢大家,用临时表做缓存解决了。