use sync.Pool to get the 1MB byte buffers