improve performance: use chan buffer decr the bufio.NewReader call