【发布时间】:2018-09-30 23:02:24
【问题描述】:
我们经营许多小型网站。我们通常将它们托管在 Digital Ocean 的 5-10 美元服务器上。
我们部署的一部分是使用 node-sass 将 Sass 编译为 CSS。
在我们最新的服务器上,node-sass 库(不是实际的 scss 文件)的编译时间显着增加。我们说的是 8-10 分钟,而在其他项目中则需要 30-100 秒。
我们在 Ubuntu 16.04.4 上使用 node 8.11.1(最新 LTS)和 yarn 1.6.0(最新)和 node-sass 4.8.3(最新)。
有没有办法缓存部署之间的编译?或者有人知道为什么编译 node-sass 需要这么多时间吗?
【问题讨论】:
-
编译是如何触发的? node_modules 是缓存还是必须每次都安装?
-
它是由 yarn install 触发的——是的,node_modules 在每次部署时都是全新安装的。
-
为什么不用
yarn install —production这样你就不需要每次都安装依赖了?命令是如何触发的?您有部署集还是手动部署? -
实际上它确实是由生产标志触发的。我们有一个部署脚本:创建文件夹、从 git 拉取、安装依赖项、运行构建脚本、切换文件夹 -- 已发布。
-
也许您可以创建一些详细的日志输出,这样您就可以查看哪个进程花费了这么长时间。我在虚拟主机上安装 npm 时遇到了太多安装问题。我解决了以root身份安装所有节点包的问题,因此虚拟主机用户只使用所需的方法,而不必安装节点包。
标签: node.js sass yarnpkg node-sass