后端怎么记录App最后在线时间最合理
一些移动端统计平台可以统计日活月活,但是我想自己的系统记录一份在线时间,比如查看到具体某个用户最后在线时间,或者最后通信时间,因为Token是长期有效的,不可能让用户每天登录一次,所以依靠登录接口来记录最后在线时间有些离谱,目前想到的办法
1、APP每天第一次启动上报一次当前账户,活跃记录,APP自己维持这个状态,当日不再上报。统计精度/天,资源消耗/非常低
2、API每次请求都使用中间件拦截,更新用户表最后在线时间字段(最后一次请求API时间)。统计精度/很高,资源消耗/非常高
2.1、API每次请求都使用中间件拦截,如果数据库记录和当前时间差距超过30分钟,更新用户表最后在线时间字段。统计精度/半小时,资源消耗/低
2.2、2.1的基础上改成存redis,不会丢失30分钟的精度。
3、长连接实时检测在线状态,统计精度/毫秒级,资源消耗/很高。
有没有其他什么更好的方案,能做到记录最后在线时间精度最高,同时资源开销、开发复杂度更低
推荐文章: