linux 使用 mwget 实现多线程下载

linux中的wget是一个常用的下载命令,但它是单线程的

场景

我的项目中,用户上传图片时为了减轻服务器压力,直接把图片上传到了阿里云存储中,同时还希望自己服务器保留用户的图片,就使用了wget定时从阿里云获取图片 随着用户上传图片量的增加,希望更快的下载图片,使用单线程的wget执行下载任务稍显不足,就想自己写一个多线程下载程序,这时发现了一个多线程版本的wget - mwget,马上安装试用

测试

云存储中有一个11M的图片,分别使用 wget 和 mwget 进行下载测试,各测试了5次,从平均结果看,mwget 的确更快,较wget快了3倍左右 初次测试结果很不错,后期会在不同时间点和对更多的文件进行下载测试,如果结果很稳定,会考虑在正式环境使用

安装

下面是安装过程,有兴趣的话可以试下 # wget http://jaist.dl.sourceforge.net/project/kmphpfm/mwget/0.1/mwget_0.1.0.orig.tar.bz2 # tar -xjvf mwget_0.1.0.orig.tar.bz2 # cd mwget_0.1.0.orig # ./configure # make # make install 安装 mwget 时可能会需要 xmlparser、gettext、intltool,我的系统为centos,执行下面的几个命令来安装 # yum install perl-XML-Parser # yum install gettext # yum install intltool

原文发布于微信公众号 - 性能与架构(yogoup)

原文发表时间:2016-01-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构

干货:大型互联网公司分布式缓存的优秀实践和线上案例在此我在推荐一个学习架构框架的学习体系:

3336
来自专栏python3

清理Linux内存

因为LINUX的内核机制,一般情况下不需要特意去释放已经使用的cache。这些cache起来的内容可以增加文件以及的读写速度。

2301
来自专栏小巫技术博客

快速集成Bugly Android SDK

3021
来自专栏mini188

哪种缓存效果高?开源一个简单的缓存组件j2cache

背景 现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的。我在项目中也开始接触一些缓存的需求。 开始简单的就用jvm(java...

2696
来自专栏云计算与大数据

研发:git flow 研发工作流程

git flow命令仓库:https://github.com/heidsoft/gitflow

1353
来自专栏微信公众号:Java团长

为什么多线程是个坏主意

在 Unix编程艺术 中,提到了尽量避免多线程编程模型, 认为这样只会增加复杂度, 提倡使用多进程, 这样本质上就可以避免多线程『共享内存数据』产生的 “cor...

1142
来自专栏翻译社

6个虚拟机备份和恢复的最佳实践

虚拟机的体系结构与传统的本地环境大不相同,需要不同的数据备份技术。本文将介绍一些备份虚拟机的最佳实践。

3216
来自专栏Rainbond开源「容器云平台」

好雨云帮近期问答集锦(1.16 - 2.5)

1213
来自专栏云计算教程系列

如何使用Capistrano自动部署:入门教程

制作基于Web的应用程序的关键领域之一是部署。如何部署,这项任务确实被视为一件苦差事,似乎对您的项目几乎没有任何直接或附加价值。然而,一个精心设计的部署过程肯定...

1252
来自专栏带你撸出一手好代码

使用Java内置的Http Server构建Web应用

一、概述 使用Java技术构建Web应用时, 我们通常离不开tomcat和jetty之类的servlet容器,这些Web服务器功能强大,性能强劲,深受欢迎,是运...

3117

扫码关注云+社区

领取腾讯云代金券