|
@@ -368,24 +368,25 @@ func PutLoginSess(mongodb MongodbSim, apppushRpc, key, userid string, limit, max
|
|
|
}
|
|
|
ttlmap := []TtlMap{}
|
|
|
//大于临界点 清理无用sessionid
|
|
|
- if len(value) >= int(limit*max/100) {
|
|
|
- new_value := []string{}
|
|
|
- //如果已存的session大于限制 则清除三天后到期的session
|
|
|
- for _, vv := range value {
|
|
|
- ttl := redis.GetTTL("session", vv)
|
|
|
- // if ttl <= 86400*3 && ttl != -1 {
|
|
|
- if ttl <= 600 && ttl != -1 {
|
|
|
- if ok := redis.Del("session", vv); ok {
|
|
|
- LoginOutPush(mongodb, userid, vv, apppushRpc)
|
|
|
- log.Println(fmt.Sprintf("%s用户的sessionid 到期时间还有%v 小于三天 清除 %s", userid, ttl, vv))
|
|
|
- }
|
|
|
- continue
|
|
|
- }
|
|
|
- new_value = append(new_value, vv)
|
|
|
- ttlmap = append(ttlmap, TtlMap{vv, int(ttl)})
|
|
|
- }
|
|
|
- value = new_value
|
|
|
- }
|
|
|
+ // if len(value) >= int(limit*max/100) {
|
|
|
+ // new_value := []string{}
|
|
|
+ // //如果已存的session大于限制 则清除三天后到期的session
|
|
|
+ // for _, vv := range value {
|
|
|
+ // ttl := redis.GetTTL("session", vv)
|
|
|
+ // log.Println("ttl:", ttl)
|
|
|
+ // // if ttl <= 86400*3 && ttl != -1 {
|
|
|
+ // if ttl <= 600 && ttl != -1 {
|
|
|
+ // if ok := redis.Del("session", vv); ok {
|
|
|
+ // LoginOutPush(mongodb, userid, vv, apppushRpc)
|
|
|
+ // log.Println(fmt.Sprintf("%s用户的sessionid 到期时间还有%v 小于三天 清除 %s", userid, ttl, vv))
|
|
|
+ // }
|
|
|
+ // continue
|
|
|
+ // }
|
|
|
+ // new_value = append(new_value, vv)
|
|
|
+ // ttlmap = append(ttlmap, TtlMap{vv, int(ttl)})
|
|
|
+ // }
|
|
|
+ // value = new_value
|
|
|
+ // }
|
|
|
//清除并发最大限制的某个sessionid
|
|
|
if len(value) > max {
|
|
|
//排序 获取马上过期的session 清除
|