一文带你了解PNPM以及 npm,yarn,pnpm区别

简介: 一文带你了解PNPM以及 npm,yarn,pnpm区别

https://pnpm.io/

什么是Pnpm ?

pnpm - 速度快、节省磁盘空间的软件包管理器

全局安装

npm install -g pnpm

或使用 yarn

yarn global add pnpm

这将在全局范围内安装 pnpm

在项目中初始化 pnpm

pnpm init

这会在当前目录下生成 package.json 文件,类似于 npm inityarn init

安装项目依赖项:

pnpm install

这将安装项目的依赖项,类似于 npm installyarn install

全局安装依赖项:

pnpm install -g package-name

或使用 yarn

yarn global add package-name

运行脚本:

pnpm run script-name

这将运行项目中的脚本,类似于 npm run script-nameyarn run script-name

查看安装的包:

pnpm list

这将显示项目中安装的所有包。

卸载包:

pnpm uninstall package-name

Pnpm & yarn & npm 对比

1. 磁盘占用空间少

pnpm 使用硬链接和符号链接来共享依赖项,而不是像 npmyarn 一样在每个项目中复制一份。这减少了磁盘空间的占用,因为相同的依赖项可以被多个项目共享

2. 安装依赖速度快

由于采用硬链接和符号链接,pnpm 在安装依赖项时通常比 npmyarn 更快,特别是在有多个项目共享相同依赖项时。

3. 确保依赖一致性

pnpm 在安装依赖项时采用原子操作的方式,确保安装操作是原子的,要么全部成功,要么全部失败。这有助于确保依赖项的一致性。

4. 单一存储

pnpm 有一个单一的全局存储目录,避免了 npm 的多版本全局安装带来的问题

5. 支持多引擎  [npm,yarn,pnpm 可以互相切换]

pnpm 可以与 npmyarn 共存,这使得迁移到 pnpm 不需要修改项目文件。

三者对比

Feature

pnpm

Yarn

npm

Workspace support

✔️

✔️

✔️

Isolated node_modules

✔️ - The default

✔️

✔️

Hoisted node_modules

✔️

✔️

✔️ - The default

Autoinstalling peers

✔️

✔️

Plug'n'Play

✔️

✔️ - The default

Zero-Installs

✔️

Patching dependencies

✔️

✔️

Managing Node.js versions

✔️

Has a lockfile

✔️ - pnpm-lock.yaml

✔️ - yarn.lock

✔️ - package-lock.json

Overrides support

✔️

✔️ - Via resolutions

✔️

Content-addressable storage

✔️

Dynamic package execution

✔️ - Via pnpm dlx

✔️ - Via yarn dlx

✔️ - Via npx

Side-effects cache

✔️

Listing licenses

✔️ - Via pnpm licenses list

✔️ - Via a plugin

相关文章
|
1月前
|
存储 资源调度 JavaScript
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具。npm 是官方默认的包管理器,提供依赖管理、安装和更新等功能;cnpm 是由阿里巴巴开发的 npm 镜像,专为中国大陆用户优化,解决下载速度慢的问题;pnpm 通过硬链接技术提高安装速度并节省磁盘空间,特别适合磁盘资源紧张的环境。三者命令类似,但各有特色,开发者可根据需求选择合适的工具。
95 5
|
3月前
|
分布式计算 资源调度 Hadoop
Spark Standalone与YARN的区别?
本文详细解析了 Apache Spark 的两种常见部署模式:Standalone 和 YARN。Standalone 模式自带轻量级集群管理服务,适合小规模集群;YARN 模式与 Hadoop 生态系统集成,适合大规模生产环境。文章通过示例代码展示了如何在两种模式下运行 Spark 应用程序,并总结了两者的优缺点,帮助读者根据需求选择合适的部署模式。
149 3
|
4月前
|
分布式计算 资源调度 Hadoop
Spark Standalone与YARN的区别?
【10月更文挑战第5天】随着大数据处理需求的增长,Apache Spark 成为了广泛采用的大数据处理框架。本文详细解析了 Spark Standalone 与 YARN 两种常见部署模式的区别,并通过示例代码展示了如何在不同模式下运行 Spark 应用程序。Standalone 模式自带轻量级集群管理,适合小规模集群或独立部署;YARN 则作为外部资源管理器,能够与 Hadoop 生态系统中的其他应用共享资源,更适合大规模生产环境。文章对比了两者的资源管理、部署灵活性、扩展性和集成能力,帮助读者根据需求选择合适的部署模式。
64 1
|
4月前
|
缓存 资源调度 JavaScript
npx与npm的差异解析,以及包管理器yarn与Node版本管理工具nvm的使用方法详解
npx与npm的差异解析,以及包管理器yarn与Node版本管理工具nvm的使用方法详解
144 0
|
6月前
|
资源调度 前端开发 JavaScript
谈后端人眼里的 nvm、yarn、pnpm……
虽然我是做后端的,但也时常关注前端,只是最近觉得前端的各种工具名称太眼花缭乱了,nvm、yarn、pnpm、taro……
55 4
|
8月前
|
资源调度 分布式计算 安全
YARN的FIFO调度器和Capacity Scheduler调度器在资源分配上有何区别?
【6月更文挑战第20天】YARN的FIFO调度器和Capacity Scheduler调度器在资源分配上有何区别?
94 11
|
8月前
|
存储 缓存 资源调度
npm、yarn与pnpm详解
npm、yarn与pnpm详解
177 0
|
5月前
|
资源调度 分布式计算 Hadoop
YARN(Hadoop操作系统)的架构
本文详细解释了YARN(Hadoop操作系统)的架构,包括其主要组件如ResourceManager、NodeManager和ApplicationMaster的作用以及它们如何协同工作来管理Hadoop集群中的资源和调度作业。
207 3
YARN(Hadoop操作系统)的架构
|
5月前
|
资源调度 分布式计算 Hadoop
使用YARN命令管理Hadoop作业
本文介绍了如何使用YARN命令来管理Hadoop作业,包括查看作业列表、检查作业状态、杀死作业、获取作业日志以及检查节点和队列状态等操作。
121 1
使用YARN命令管理Hadoop作业
|
6月前
|
资源调度 分布式计算 算法
【揭秘Yarn调度秘籍】打破资源分配的枷锁,Hadoop Yarn权重调度全攻略!
【8月更文挑战第24天】在大数据处理领域,Hadoop Yarn 是一种关键的作业调度与集群资源管理工具。它支持多种调度器以适应不同需求,默认采用FIFO调度器,但可通过引入基于权重的调度算法来提高资源利用率。该算法根据作业或用户的权重值决定资源分配比例,权重高的可获得更多计算资源,特别适合多用户共享环境。管理员需在Yarn配置文件中启用特定调度器(如CapacityScheduler),并通过设置队列权重来实现资源的动态调整。合理配置权重有助于避免资源浪费,确保集群高效运行,满足不同用户需求。
90 3

热门文章

最新文章

推荐镜像

更多