客户端使用指南
群组统计规则说明
一个平台的互动,连接的是整个世界
群组统计工作原理
| 原理 | 间隔 | 说明 |
|---|---|---|
| 检测间隔 | 5秒 | 每5秒执行一次群组成员变化检测 |
| 初始化缓冲期 | 30秒 | 群组开始统计后,前30秒不上报新增成员,用于建立基线 |
| 采样次数 | 3次 | 每次统计会进行3次数据采样确保完整性 |
| 采样间隔 | 2秒 | 每次采样之间间隔2秒 |
| 最大等待时间 | 10秒 | 获取大群组数据的最大超时时间 |
| 错误重试次数 | 2次 | 遇到临时性错误时的最大重试次数 |
| 批处理大小 | 3个 | 每批同时处理的群组数量,尽量避免同时开启太多 |
群组统计流程
- 群组初始化→2.建立基线数据(缓存初始成员列表)→3.进入30秒缓冲期(不上报新增)→4.缓冲期结束,开始正式统计→5.每5秒检测一次成员变化→6.发现变化及时上报
数据采样机制 为确保数据完整性,系统采用多次采样策略:
- 普通群组:采样3次,每次间隔2秒
- 大群组(>500人):自动增加采样次数至5次
- 提前终止:如果连续2次采样无新数据,提前结束
- 去重合并:将多次采样结果去重后合并
状态持久化
系统会自动保存统计状态,支持页面刷新后恢复:
- 保存频率:每30秒自动保存一次
- 状态有效期:5分钟内的状态可恢复
- 保存内容:群组列表、初始化状态、成员缓存
三种统计模式详解
1. 进群统计
统计范围
- ✅ 当前群成员
- ✅ 历史成员,已退出但有记录
- ❌ 待加入成员
- ❌ 申请加入成员
统计规则
统计对象 = (当前成员 + 历史成员)的新增部分
变化检测
- 新增检测:✅ 监测新加入的成员
- 减少检测:❌ 不监测退出成员
应用场景
- 统计所有曾经进入过群组的成员
- 适合拉新统计,关注有多少人进入过群
- 不关心成员退出情况
上报时机
- 初始化完成30秒后,每5秒检测,发现新成员立即上报(包含成员详情)
2. 申请统计
统计范围
- ✅ 当前群成员
- ✅ 待加入成员
- ✅ 历史成员
- ✅ 申请加入成员
统计规则
统计对象 = (当前成员 + 待定成员 + 历史成员 + 申请成员)的新增部分
变化检测
- 新增检测:✅ 监测所有类型的新增
- 减少检测:❌ 不监测成员减少
应用场景
- 统计全部加入群组的人员状态
- 包含申请中、待审核、已加入、已退出所有状态
- 适合需要完整掌握群组人员动态的场景
上报时机
任何状态的成员新增都会触发上报,可以追踪从申请到加入的完整流程
3. 留存统计
统计范围
- ✅ 仅当前群成员
- ❌ 不统计历史成员
- ❌ 不统计待加入
- ❌ 不统计申请
统计规则
统计对象 = 仅当前成员
变化检测
- 新增检测:✅ 监测新加入成员
- 减少检测:✅ 独有功能 - 监测退出成员
应用场景
- 关注当前活跃成员
- 统计群组留存率
- 监测成员流失情况
- 适合需要分析群组活跃度和留存率的场景
上报时机
- 发现新成员:立即上报
- 发现成员退出:立即上报
核心差异对比表
| 特性 | 进群统计 | 申请统计 | 留存统计 |
|---|---|---|---|
| 当前成员 | ✅ | ✅ | ✅ |
| 历史成员 | ✅ | ✅ | ❌ |
| 待定成员 | ❌ | ✅ | ❌ |
| 申请成员 | ❌ | ✅ | ❌ |
| 监测新增 | ✅ | ✅ | ✅ |
| 监测退出 | ❌ | ❌ | ✅ 独有 |
| 适用场景 | 拉新统计 | 全流程统计 | 留存分析 |
| 关注点 | 开始统计后所有申请过的 | 开始统计后所有申请过的 | 截止到统计时群里净新增的 |
智能采样策略
系统会根据群组规模动态调整采样策略:
普通群组(≤500人):
采样次数: 3次
采样间隔: 2秒
总耗时: ~6秒
大群组(>500人):
采样次数: 5次(自动增加)
采样间隔: 2秒
总耗时: ~10秒
额外等待: 检测到大群前3次采样会额外等待2秒
群组移除机制
- 连续3次加载失败才停止群组,通常发生在统计账号被踢出的情况,避免临时性错误导致误删