TJ君最近有点惆怅,为啥呢?最近TJ君发现GitHub越来越难上了,有时候经常出现无法访问的情况:
想必很多人也会跟TJ君有同样的烦恼,毕竟GitHub是一个学习编程的好地方,这样断断续续的使用,极度影响吾等程序猿的用户体验,那,该怎么办!?
既然这是一个大家都会遇到的问题,TJ君觉得肯定有业界大神会帮大家想解决方案,果不其然,TJ君发动小宇宙找了一会,找到一个不错的GitHub开源加速工具,可以安全又顺畅的继续访问GitHub了!
#FastGithub
一款GitHub加速利器,专门为解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题而诞生。
那究竟这款工具有多利器?TJ君举个例子,曾经TJ君的一个朋友对于找女友是这样筛选的:
备选人员 | 长腿 | 大凶 |
---|---|---|
美女1 | NO | NO |
美女2 | NO | YES |
通过简单的X宫格就可以显而易见的做出判断,而对于FastGithub,作者给出的看法通过X宫格形容就是:
方案 | 合法性 | 可靠性 | 完整性 | 共享性 | 无服务器 | 免费 |
---|---|---|---|---|---|---|
FastGithub | YES | YES | YES | YES | YES | YES |
hosts文件 | YES | NO | NO | NO | YES | YES |
vpn代理 | NO | YES | YES | NO | NO | NO |
github镜像插件 | YES | YES | NO | YES | YES | YES |
这里的各种方案是作者备选的用来加速登录GitHub的方法,其中各项宫格的解释分别是:
- 合法性:指是否符合中华人民共和国的相关法律,并且没有违反任何相关法律;
- 可靠性:指是否能在使用之后稳定的、不间断的持续访问GitHub;
- 完整性:指是否能在查阅GitHub资源的同时可以满足提交给GitHub相应的资源,实现双向交互;
- 共享性:指是否在局域网范围内可以形成部署之后的共用模式;
- 无服务器:这个最直接的表述就是是否需要额外购买中转服务器的流量服务;
- 免费:字面意思,用户需不需要掏出大洋~
从表格中,我们可以清晰的看到,FastGithub的得分是最高的,像其中大家最关心的应该是合法性吧,至少TJ君比较关注这点,对于这条合法性,作者也给出了比较详细的进一步解释用来打消大家的使用疑虑:
《国际联网暂行规定》第六条规定:“计算机信息网络直接进行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。” FastGithub本地代理使用的都是“公用电信网提供的国际出入口信道”,从国外Github服务器到国内用户电脑上FastGithub程序的流量,使用的是正常流量通道,其间未对流量进行任何额外加密(仅有网页原有的TLS加密,区别于VPN的流量加密),而FastGithub获取到网页数据之后发生的整个代理过程完全在国内,不再适用国际互联网相关之规定。
所以说大家是可以放心地使用FastGithub的。
FastGithub提供完整的开源代码让小伙伴们学习,也直接提供各个不同平台的直接安装程序,方便大家使用。
最新的一个安装版本是5天前发布的2.0.4版本,作者也是一直在更新相应的功能让工具变得更加强大。
以windows-x64版本为例,只需双击运行fastgithub.exe程序,就可以看到FastGithub启动成功的提示
当我访问下述地址时,也可以清楚地看到FastGithub的响应时间
其实仅就WINDOWS端的加速原理来说,可以用7个步骤来解释:
- 客户端访问https://github.com
- 客户端向dns查询github.com的ip,FastGithub拦截dns数据包并伪造解析结果为127.0.0.1
- 客户端请求到FastGithub的https://127.0.0.1:443
- FastGithub使用fastgithub.cer颁发服务器证书给客户端
- FastGithub查询和计算github.com最快的ip
- FastGithub与github.com进行无sni的tls连接
- FastGithub将请求反向代理到https://github.com
就是这么的简单,但是却是作者智慧的结晶,同时也大度的将这个结晶分享给了我们大家,所以大家以后有什么好东西,也记得要拿出来一起分享哦。
不管是想直接使用这款利器的、还是想研究相关代码是如何实现的小伙伴,赶紧下载吧!