我们使用ant作为构建系统的一部分来复制各种文件,在1004上,整个过程大约需要5分钟,然而,当我们现在开始转向11.04作为我们的主要开发平台时,我们注意到它现在需要大约25分钟,这是一个相当大的增长因素。
有没有人注意到类似的事情,或者我们只是遇到了一些奇怪的问题?
编辑:https://gist.github.com/2049693vmstat在运行一个非常繁重的ant复制任务时运行的2分钟概述的要点。
编辑:更多信息,1004和11.04都运行Java 1.6,1004上的Ant版本是1.7.1,11.04上的Ant版是1.8.0(都是从Ubuntu主库安装的)。当在verbose上运行时,执行我们最大的复制进程之一实际上明显慢了。
编辑:问题发生在从二进制和源代码安装的最新版本的ant(1.8.3)上。
升级时我没有注意到任何东西。我们的构建仍然需要10分钟。
以下是可能导致这种情况的因素列表:
-
您运行的进程更多,需要更多的RAM,因此操作系统没有足够的可用缓冲区来缓存文件。
-
您还在同一类型的文件系统上吗?更新可能已迁移到ext4。
-
你有没有试着在一个旧盒子上运行构建,以确保构建本身没有任何变化。
-
机器上的负载是多少?
-
是否添加了带有DTD/架构的XML文件?一些XML解析器实际上试图从互联网上下载这些文件。
[EDIT]这篇博客文章列出了一些工具来了解Linux的性能:http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
我在Ubuntu 11.04的1.8.0版本中遇到了同样的问题。升级到1.9.2,现在拷贝速度更快。
我遵循了这个网站的说明,因为apt-get正在安装1.8版本。