用到的SDK需要从GitHub中git开源库集成器vcpkg。由于众所周知的dns污染,访问和下载GitHub中的文件十分缓慢。我尝试了两种解决方案,最终通过国内码云gitee镜像下载。这篇文章介绍两种提高vcpkg下载速度的方法。
导读
修改Hosts文件
既然GitHub被dns污染,那么我们在hosts文件中为其指定一个dns即可。hosts文件的作用是不通过服务商进行dns解析,直接在本地解析域名的dns。
例如如果在hosts文件中添加127.0.0.1 www.yar2001.com
一行,那么意味着浏览器或客户端在访问www.yar2001.com时会将dns解析到本地(127.0.0.1和localhost作用效果相同,都指本地)。添加192.30.253.113 www.github.com
一行意味着访问www.github.com域名时会自动将dns解析到192.30.253.113,从而避免遭到dns污染后访问速度下降。
但是,GitHub资源进行下载时,可能使用了CDN,因此文件的下载不是通过域名www.github.com,还可能有其他域名。因此,从网络上,我归纳出以下hosts。但实际上也可以通过查dns的网站(例如:https://www.ip138.com/)手动获取。
192.30.255.112 github.com
192.30.255.113 www.github.com
151.101.25.194 github.global.ssl.fastly.net
204.232.175.78 documentcloud.github.com
hosts文件位置:C:\Windows\System32\drivers\etc\hosts
注意文件保存后,在命令提示符中输入ipconfig /flushdns
刷新dns缓存。
这个方法可以明显提升GitHub的打开速度,但git的速度似乎更慢了,最终我不得不去寻找其他方法。
通过国内镜像下载vcpkg
在百度上搜了许久,都是清一色的告诉我怎么修改hosts文件。此时已经凌晨12点半,想到我的养生计划,我只能心有不甘的去睡觉了。第二天早晨,休息了六个多小时的大脑灵机一动,为什么不通过国内镜像码云下载呢?
其实我是打算通过国内镜像下载的,但百度上搜索不到。恍惚间想起以前听说的GitHub中国版“码云”,一番查找后居然真的找到了镜像!那么只需要将下载链接https://github.com/Microsoft/vcpkg.git改为https://gitee.com/mirrors/vcpkg.git,就可以愉快的下载了。
写在最后
构建完vcpkg后SDK的环境就构建完了吗?没有!找镜像是一种治标不治本的方法。许多其他组件的下载仍然需要连接到外网。如果有能力,最好还是自行搭建网络环境。
欢迎来到Yari的网站:yar2001 » 提高vcpkg在GitHub中的下载速度 hosts文件修改或使用国内镜像