Ant 1.8.0性能低下

时间:2010-02-21 08:21:10

标签: performance ant exec

New Ant 1.8.0(2月1日发布)介绍了一些很酷的功能,所以我尝试使用新的Ant构建/部署脚本。

我很惊讶一些目标的执行时间变慢了10-30倍!下面是使用Exec任务的简单示例,虽然我也遇到了其他任务类型的性能问题。

<target name="create_backup_impl" if="db.make_backup" >
    <echo message="Backup is starting.." />
    <exec executable="${db.dump_executable}"    
            output="${db.backup_file}"
            failonerror="true">
        <arg value="-h${db.host}" />
        <arg value="-u${db.userid}" />
        <arg value="-p${db.password}" /> 
        <arg value="${db.backup_options}" /> 
        <arg value="${db.name}" />      
    </exec>
    <echo message="Backup completed!" />
</target>

它是备份数据库的目标(备份大小~100 Mb)。 Ant 1.7.1工作约30秒,Ant 1.8.0 - 15分钟。我试了几次,效果很稳定。 Ant 1.8的处理器负载非常低,旧的处理器负载接近50%。看起来像进程优先级或缓慢IO操作的问题。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

使用

时,我看到类似的性能下降
<apply executable="...">
   ...
</apply> 

看起来这种性能下降是由ANT 1.8.0中的一个9年前的错误修复引起的:https://issues.apache.org/bugzilla/show_bug.cgi?id=5003(见评论#29)。

ANT 1.8.1的性能稍有改善,但仍然比ANT 1.7.1更差:https://issues.apache.org/bugzilla/show_bug.cgi?id=48734(见评论#2)。

答案 1 :(得分:1)

我建议直接向Ant团队提交错误报告。他们的回应时间通常非常好。

http://ant.apache.org/bugs.html