实时裁剪压缩图片服务器 Bolt

简介:

Bolt 详细介绍

介绍

Bolt是一个实时裁剪压缩图片服务器,其比nginx的image_filter快2倍以上,主要是因为Bolt对一张图片只做一次处理,就算在处理图片的过程中,其他的客户端也在请求此图片,Bolt也能保证只有一个线程在处理此图片。

另外Bolt替换缓存机制,处理过的图片不再进行第二次处理,除非内存不足的时候,Bolt才会处理LRU算法来删除缓存中的图片,在启动Bolt的时候可以使用“--max-cache”启动参数来设置最大内存限制。Bolt使用LRU算法来淘汰缓存的图片,也就是说一般只会淘汰较少访问的图片,这就可以很好的限制Bolt的内存使用。

用在哪里

Bolt可以用在内存和CPU都过剩的服务器,另外使用Bolt可以减少磁盘的使用,加快图片的加载速度。

安装

1) 安装libevent (http://libevent.org/) 2) 安装ImageMagick (http://www.imagemagick.org/script/index.php) 3) 安装Bolt

$ git clone https://git.oschina.net/liexusong/bolt.git
$ cd bolt
$ make

使用方式

访问URL:http://your-host/filename_(width)x(height)_(quality).jpg

Bolt启动项说明

--host 设置绑定的IP

--port 设置监听的端口

--workers 启动多少个worker线程(用于裁剪图片)

--logfile 日志文件输出的路径

--logmark 日志要显示的级别,可以选择(DEBUG|NOTICE|ALERT|ERROR)

--max-cache 设置Bolt可以使用的最大内存(单位为字节)

--gc-threshold GC要清理的阀值(也就是说GC会清理到max-cache的百分之多少停止,可选值为0 ~ 99)

--path 要进行裁剪的图片源路径

--watermark 水印图片路径

--daemon 是否启动守护进程模式

--help 显示帮助信息

文章转载自 开源中国社区[https://www.oschina.net]

相关文章
|
5月前
|
存储 编解码 Cloud Native
音视频 fmpeg命令裁剪和合并视频
音视频 fmpeg命令裁剪和合并视频
|
30天前
|
编解码 API 数据处理
【摄像头数据处理】摄像头数据处理:使用FFmpeg合并、编码和封装视频流
【摄像头数据处理】摄像头数据处理:使用FFmpeg合并、编码和封装视频流
49 0
|
编解码 Linux API
【FFmpeg 视频流处理】FFmpeg API深度解析:视频流画面合并、拼接与裁剪技巧
【FFmpeg 视频流处理】FFmpeg API深度解析:视频流画面合并、拼接与裁剪技巧
82 0
|
1月前
|
存储 编解码 缓存
【ffmpeg 移动视频流位置】深入理解FFmpeg:精细探讨seek操作和编解码上下文
【ffmpeg 移动视频流位置】深入理解FFmpeg:精细探讨seek操作和编解码上下文
44 0
|
3月前
|
存储 传感器 监控
工业相机如何实现实时和本地Raw格式图像和Bitmap格式图像的保存和相互转换(C#代码,UI界面版)
工业相机如何实现实时和本地Raw格式图像和Bitmap格式图像的保存和相互转换(C#代码,UI界面版)
31 0
|
4月前
|
Web App开发 负载均衡 监控
为什么选择实时云渲染却不选择像素流?
为什么选择实时云渲染却不选择像素流?
|
8月前
|
数据采集 编解码 数据处理
Unity下如何实现低延迟的全景RTMP|RTSP流渲染
Unity下如何实现低延迟的全景RTMP|RTSP流渲染
121 0
|
11月前
|
分布式计算 Ubuntu Java
基于Spark的应用水印技术和流数据去重
基于Spark的应用水印技术和流数据去重
|
大数据 数据管理 数据挖掘
使用Arcpy进行数据批处理-批量裁剪
使用Arcpy进行数据批处理-批量裁剪
|
Web App开发 负载均衡 数据可视化
浅谈点量云实时渲染和像素流的六点区别
点量云实时渲染和像素流有哪些不同?主要从以下方面展开:1、兼容性2、可云流化程序类型3、实时渲染支持显卡和多服务器负载均衡而像素流技术不支持4、云流化支持网页和客户端交互方式和支持终端类型更多5、点量云实时渲染系统共有可视化后台和运营数据展示报表6、支持会议模式和音视频功能
432 0
浅谈点量云实时渲染和像素流的六点区别