介绍

Image2webpWebp
JPGJPEGPNGBMPGIFWebp
Webp
Webpnginx

最佳实践

^(.+)_webp(_(\d+)_(\d+)(.*))?$

如果是前端访问图片,在请求量很大的时候,这种实时转码的方式会造成cpu性能不足,所以针对大请求量的情况, 可以选择开启缓存,设置缓存目录,生成的webp文件会写入该目录。 把cdn图片缓存有效期设置的长一点,本服务只是回源使用,那样就很完美了。

编译

1.16mod
make

编译成功后,你可以执行

启动它

配置

config.json 
  • addr 监听的地址与端口 "127.0.0.1:8563"
  • storagePath 图片存储的目录
  • quality 转码成webp时的图片质量百分比 默认是80%
  • allowSizes 支持的缩略图格式,_50_50: _width_height
  • enableTmpFile 开启图片缓存
  • tmpStoragePath 图片缓存的目录

部署

image2webpnginx.conf

部署好后的效果如下:

http://image.example.com/images/timg.jpeghttp://image.example.com/images/timg.jpeg_webphttp://image.example.com/images/timg.jpeg_webp_100_100

感谢

  • 本项目是基于DMicro框架开发.
  • 本项目是基于Go Frame框架开发.
  • 感谢提供了各种图片转换库的项目,大家可以看源码库的引用。