2012-08-06 87 views
4
 
cpan[1]> install Crypt::SSLeay 
Reading '/root/.cpan/sources/authors/01mailrc.txt.gz' 
............................................................................DONE 
Reading '/root/.cpan/sources/modules/02packages.details.txt.gz' 

Database was generated on Mon, 06 Aug 2012 09:19:03 GMT 
............................................................................DONE 

Reading '/root/.cpan/sources/modules/03modlist.data.gz' 

................................................................ 

Running install for module 'Crypt::SSLeay' 
Running make for N/NA/NANIS/Crypt-SSLeay-0.64.tar.gz 
Fetching with LWP: 
http://mirror.cogentco.com/pub/CPAN/authors/id/N/NA/NANIS/Crypt-SSLeay-0.64.tar.gz 

Fetching with LWP: 
http://mirror.cogentco.com/pub/CPAN/authors/id/N/NA/NANIS/CHECKSUMS 

CPAN.pm在这两个步骤需要15分钟。我已将更多网址添加到urllist。他们大多数使用HTTP。CPAN.pm需要时间来安装模块

为什么这需要这么长时间,我该如何让它更快?

回答

4

如果你用CPAN做了很多事情,请配置和使用本地的MiniCPAN。让它在你不注意时自动更新,然后在你准备好时迅速安装。你第一次设置它将会花费很长时间,但它永远是你不必关心的,因为你不必去关注它。

daxim recommended sqlite and cpanm,你可以使用,但如果你的网络是慢的部分,你仍然必须使用这些网络中的任何一个。

你在输出片段中看到的是你的CPAN客户端下载了几个巨大的文本文件,这些文本文件是CPAN当前内容的索引。软件包文件有超过125,000行,但只压缩了大约1.5Mb。但是,该文件每小时更新一次,并且CPAN.pm始终需要最新的文件。它是系统中巨大的设计瑕疵之一,但这就是你使用历史最悠久,历史最久的CPAN客户端所拥有的。

cpanm通过不关注索引文件来解决这个问题。它直接进入CPAN搜索网站,找出最新版本,然后使用它。这可能对你更好。

你说你添加了更多的URL。这是CPAN客户端的另一个问题。一旦它找到一个能够返回良好状态的URL,即使你在尼日尔中部选择了一个具有56k调制解调器上行链路的通过一颗滞后卫星的东西,在这个卫星上操作人员用手输入零值。

在我最新版本的the cpan command line tool中,CPAN.pm附带(但通常稍后,这是我的错),我添加了镜像ping功能,可以基于ping为您找到最佳镜像倍。这只是检查延迟,吞吐量仍然是一个问题。

所有这些都是为什么我使用MiniCPAN

4

为了使CPAN索引更快地工作,请安装CPAN :: SQLite,然后安装configureuse_sqlite1

或者,安装App-cpanminus并运行cpanm客户端,该客户端不需要本地索引。

+0

我不知道关于sqlite选项。非常时髦。 – 2012-08-06 16:40:29