您的位置:首页 > Web前端 > Node.js

node项目编译加速

2016-09-07 14:48 411 查看
公司项目适采用的前后端分离研发模式,针对后端用java的基本是是通过maven来构建的,今天要说的是前端基于node的项目。

node某块安装过程如下:

  .发出npm install 命令;

  .npm向registry查询某块压缩包的网址;

  .下载压缩包,存放在~/.npm目录 (本地缓存目录,可通过npm config set cache path 来设置本地缓存目录)

  .解压压缩包到当前项目的node_modules目录,需要编译的插件进行编译(npm config set prefix path设置npm安装程序时的默认位置)

问题:

    .有些项目执行npm install的过程过长,甚至会被卡住(原是下载速度慢,另外就是有些依赖包 被强了)

解决依次采用了三套方案(从前到后)

方案1:

     .设置固定的缓存目录,该目录下相同模块多版本可以并存,安装时使用--cache-min参数,如:

             npm install --cache-min 999999 <package>

      .设置公司的npm源以加快下载速度

   缺点:能加快下载速度,但有些需要编译的还是会耗很长时间;

方案2:

      以工程为单位进行安装。

     .安装nnpm-cache插件

          npm install -g npm-cache

     .执行安装

          npm --registry=公司私服 --cache=本地仓库 --userconfig=/home/q/prj/npm/.qnpmrc install --production

方案3:

   以模块为单位进行安装。

   .安装npm_cache_share插件

   .执行安装

      将npm换成npm_cache_share,然后指定--service XXX(中央服务器的地址+端口)就ok了

  .设置本地仓库

      通过环境变量NPM_CACHE_DIR指定本地仓库,否则会去用户目录下或者/tmp下创建.npm_cache_share目录作为本地仓库.

参考:https://www.npmjs.com/package/npm_cache_share     npm_cache_share
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  npm node
相关文章推荐