问题根因: 1. SQL查询加了 .limit(max_concurrent),导致只有数据库前5条用户参与互动 2. 额外的 random.random() < 0.6 过滤进一步减少了执行用户数 修复方案: - 查询所有已登录用户(去掉 SQL LIMIT) - 按最后互动时间升序排序,最久未互动的用户优先 - 前1/3名额给最久未互动用户(优先权),其余随机补充 - 每轮最多执行 max_concurrent 个用户,保证公平轮转
问题根因: 1. SQL查询加了 .limit(max_concurrent),导致只有数据库前5条用户参与互动 2. 额外的 random.random() < 0.6 过滤进一步减少了执行用户数 修复方案: - 查询所有已登录用户(去掉 SQL LIMIT) - 按最后互动时间升序排序,最久未互动的用户优先 - 前1/3名额给最久未互动用户(优先权),其余随机补充 - 每轮最多执行 max_concurrent 个用户,保证公平轮转