消息积压问题优化
导致消息挤压的原因
消费者的消费速度变慢了;
.因为sql语句
1.for循环中一个一个的查询数据库
每次查询都是一次远程调用,所以次数多了非常耗时
->解决方案:
提供一个根据用户id集合批量查询用户的接口,只远程调用一次就能查询出所有的数据
2.多条件查询数据的代码
解决方案:提供联合索引。
3.有可能相同查询条件的sql语句没有走真正合适的索引,走索引会根据优化器,是否使用临时表等。
-解决方案:强制走指定索引;
4.由于时间的原因,单表数据量会增加,导致查询慢
-解决方案:分库分表,或者备份数据,表中保留最近一个月的数据;