# 如何解决yarn安装过慢的问题？

By [Corror](https://paragraph.com/@corror) · 2022-10-31

---

问题描述
====

当我在使用 `yarn add hardhat` 命令以及 `yarn hardhat` 命令去安装依赖包时，会出现访问速度很慢的问题。

问题成因
====

出现这一问题，可能有两种原因：

1.  Panda 的代理服务器在处理 resolving packages 或者 fetching packages 等操作时，性能会大幅度下降，但导致该情况的原因不明。
    
2.  yarn 命令没有通过代理下载依赖包。
    

我认为，导致问题的原因，更大概率是Panda代理服务器自身的原因，也就是第一种原因。做出这一判断的依据是：

1.  成功的经验：过去在使用 `yarn add` 命令时，速度都是很快的，基本上几秒到几十秒就可以下载好一个依赖包。
    
2.  网络变化：当我在使用 `yarn add` 命令按照依赖包后，再去使用网络，会观察到网络明显变得卡顿，有时候访问 `google.com` 也会无法成功。
    
    1.  这一现象出现的原因，我怀疑是 `yarn add` 命令当中的一些行为，导致Panda服务器怀疑我在进行一些不好的操作，从而对我的网速进行限流。
        

我的行动
====

### 1\. 修改代理配置

我在一开始的行动中，误认为原因二： yarn 命令没有走代理，导致了问题的出现。

在这种情况下，我尝试设置 yarn 的代理网络，让 yarn 命令能够从设置的ip和端口中传输。

在参考[文档](https://documentation.coremedia.com/cmcc-10/current/webhelp/frontend-en/content/InstallationProxy.html)过后，我根据 Panda 的设置，对 yarn 命令的代理配置进行了如下设置：

    yarn config set proxy http://127.0.0.1:7890
    yarn config set https-proxy http://127.0.0.1:7890
    

但是，在运行 `yarn add` 命令时，出现了新的错误：

![127.0.0.1:7890 拒绝了 yarn 发起的套接字连接](https://storage.googleapis.com/papyrus_images/551c96630f29306ae3b98e30c5d3f4ec52f5c3d9a4a75766a1d82ed6fae79b28.png)

127.0.0.1:7890 拒绝了 yarn 发起的套接字连接

但是，由于 yarn 命令的 `ECONNREFUSED` 的错误过于小众，并没有可以帮助我解决问题的方案，所以我决定开始重置自己的行为，并思考新的行动方向。

### 2\. 思考行动方向

1.  重置配置：卸载重装 yarn，确保能够重置所有 yarn 的配置。
    
2.  卸载重装：卸载重装 PandaVPN，排除是安装版本过低导致的Bug.
    
3.  询问客服：将自己的观察分享给 Panda 客服，看一下他们是否有遇到过软件开发相关的网络问题。
    
4.  等待更新：一般来说，就算不管这个问题，等到 Panda 更新后，依然能够恢复网络的访问速度，也就能够解决这一问题。

---

*Originally published on [Corror](https://paragraph.com/@corror/yarn)*
