wood chen 723b73d748 feat: add compression support and update deployment workflow
add brotli and gzip compression support, update docker-compose and deployment script
2024-10-30 07:43:17 +08:00

23 lines
448 B
Go

package compression
import (
"compress/gzip"
"io"
)
type GzipCompressor struct {
level int
}
func NewGzipCompressor(level int) *GzipCompressor {
// 确保level在有效范围内
if level < gzip.DefaultCompression || level > gzip.BestCompression {
level = gzip.DefaultCompression
}
return &GzipCompressor{level: level}
}
func (g *GzipCompressor) Compress(w io.Writer) (io.WriteCloser, error) {
return gzip.NewWriterLevel(w, g.level)
}