ruby-on-rails – 在日本应用程序中,Grunt任务很慢

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在日本应用程序中,Grunt任务很慢前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个与yeoman建立的角度项目,与rails api后端交谈.

一切都很好,除了咕噜咕噜的任务很慢.

当我运行grunt服务器时–verbose:

Execution Time (2014-01-15 13:37:55 UTC)
loading tasks         14.3s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 26%
server                  1ms  0%
preprocess:multifile   11ms  0%
clean:server           13ms  0%
concurrent:server     34.3s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 63%
autoprefixer            1ms  0%
autoprefixer:dist     369ms  ▇ 1%
connect:livereload     17ms  0%
watch                  5.8s  ▇▇▇▇▇▇▇▇▇ 11%
Total 54.8s

我的一些Gruntfile:

'use strict';
module.exports = function (grunt) {
  require('time-grunt')(grunt);
  require('load-grunt-tasks')(grunt);
  require('time-grunt')(grunt);

  grunt.initConfig({
    ...
  });

grunt.loadNpmTasks('grunt-preprocess');

  grunt.registerTask('server',function (target) {
    if (target === 'dist') {
      return grunt.task.run(['build','connect:dist:keepalive']);
    }

    grunt.task.run([
      'preprocess:multifile','clean:server','concurrent:server','autoprefixer','connect:livereload','watch'
    ]);
  });

  grunt.registerTask('test',[
    'clean:server','concurrent:test','connect:test'
    //'karma'
  ]);

  grunt.registerTask('build',[
    'preprocess:multifile','clean:dist','useminPrepare','concurrent:dist','concat','copy:dist','cdnify','ngmin','cssmin','uglify','rev','usemin'
  ]);

  grunt.registerTask('default',[
    'jshint','test','build'
  ]);

};

项目规模:

vagrant@vm ~code/myapp/app/scripts
$> find -name "*.js" | xargs cat | wc -l
10209

我在MacOS 10.8上使用i7处理器,16GB内存,SSD …这是正常的,需要这么长时间?是什么让笨蛋任务(尤其是“加载任务”)如此缓慢?

注意:我在一个流浪汉机器内ssh’d并从那里运行grunt命令.如果我在我的本机系统上运行grunt命令,它会更快(加载任务需要1.6s而不是14.3).

所以共享文件系统可能是个问题.但为什么…

解决方法

我对Vagrant和Yeomans角度发生器有完全相同的问题.运行grunt服务后,编译sass,重启服务器等花了将近30秒.

我已经使用过NFS,但它仍然很慢.然后我尝试了jit-grunt,即时grunt加载器.我用jit-grunt替换了load-grunt-tasks,现在一切都快了很多.

这是一篇关于JIT-Grunt的好文章
https://medium.com/written-in-code/ced193c2900b

猜你在找的Ruby相关文章