def prune(cls, list_name, keep_count, max_keys=100): count = redis_connection.zcard(list_name) if count <= keep_count: return 0 remove_count = min(max_keys, count - keep_count) keys = redis_connection.zrange(list_name, 0, remove_count - 1) redis_connection.delete(*keys) redis_connection.zremrangebyrank(list_name, 0, remove_count - 1) return remove_count
def prune(cls, list_name, keep_count): count = redis_connection.zcard(list_name) if count <= keep_count: return 0 remove_count = count - keep_count keys = redis_connection.zrange(list_name, 0, remove_count - 1) redis_connection.delete(keys) redis_connection.zremrangebyrank(list_name, 0, remove_count - 1) return remove_count