加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-17 04:24:09 所属栏目:百科 来源:网络整理
导读:我有一个与yeoman建立的角度项目,与rails api后端交谈. 一切都很好,除了咕噜咕噜的任务很慢. 当我运行grunt服务器时–verbose: Execution Time (2014-01-15 13:37:55 UTC)loading tasks 14.3s ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 26%server 1ms 0%
我有一个与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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读