TJ君最近有點(diǎn)惆悵,為啥呢?最近TJ君發(fā)現(xiàn)GitHub越來越難上了,有時(shí)候經(jīng)常出現(xiàn)無法訪問的情況:
想必很多人也會(huì)跟TJ君有同樣的煩惱,畢竟GitHub是一個(gè)學(xué)習(xí)編程的好地方,這樣斷斷續(xù)續(xù)的使用,極度影響吾等程序猿的用戶體驗(yàn),那,該怎么辦???
既然這是一個(gè)大家都會(huì)遇到的問題,TJ君覺得肯定有業(yè)界大神會(huì)幫大家想解決方案,果不其然,TJ君發(fā)動(dòng)小宇宙找了一會(huì),找到一個(gè)不錯(cuò)的GitHub開源加速工具,可以安全又順暢的繼續(xù)訪問GitHub了!
#FastGithub
一款GitHub加速利器,專門為解決github打不開、用戶頭像無法加載、releases無法上傳下載、git-clone、git-pull、git-push失敗等問題而誕生。
那究竟這款工具有多利器?TJ君舉個(gè)例子,曾經(jīng)TJ君的一個(gè)朋友對(duì)于找女友是這樣篩選的:
備選人員 | 長(zhǎng)腿 | 大兇 |
---|---|---|
美女1 | NO | NO |
美女2 | NO | YES |
通過簡(jiǎn)單的X宮格就可以顯而易見的做出判斷,而對(duì)于FastGithub,作者給出的看法通過X宮格形容就是:
方案 | 合法性 | 可靠性 | 完整性 | 共享性 | 無服務(wù)器 | 免費(fèi) |
---|---|---|---|---|---|---|
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的方法,其中各項(xiàng)宮格的解釋分別是:
- 合法性:指是否符合中華人民共和國的相關(guān)法律,并且沒有違反任何相關(guān)法律;
- 可靠性:指是否能在使用之后穩(wěn)定的、不間斷的持續(xù)訪問GitHub;
- 完整性:指是否能在查閱GitHub資源的同時(shí)可以滿足提交給GitHub相應(yīng)的資源,實(shí)現(xiàn)雙向交互;
- 共享性:指是否在局域網(wǎng)范圍內(nèi)可以形成部署之后的共用模式;
- 無服務(wù)器:這個(gè)最直接的表述就是是否需要額外購買中轉(zhuǎn)服務(wù)器的流量服務(wù);
- 免費(fèi):字面意思,用戶需不需要掏出大洋~
從表格中,我們可以清晰的看到,F(xiàn)astGithub的得分是最高的,像其中大家最關(guān)心的應(yīng)該是合法性吧,至少TJ君比較關(guān)注這點(diǎn),對(duì)于這條合法性,作者也給出了比較詳細(xì)的進(jìn)一步解釋用來打消大家的使用疑慮:
《國際聯(lián)網(wǎng)暫行規(guī)定》第六條規(guī)定:“計(jì)算機(jī)信息網(wǎng)絡(luò)直接進(jìn)行國際聯(lián)網(wǎng),必須使用郵電部國家公用電信網(wǎng)提供的國際出入口信道。任何單位和個(gè)人不得自行建立或者使用其他信道進(jìn)行國際聯(lián)網(wǎng)。” FastGithub本地代理使用的都是“公用電信網(wǎng)提供的國際出入口信道”,從國外Github服務(wù)器到國內(nèi)用戶電腦上FastGithub程序的流量,使用的是正常流量通道,其間未對(duì)流量進(jìn)行任何額外加密(僅有網(wǎng)頁原有的TLS加密,區(qū)別于VPN的流量加密),而FastGithub獲取到網(wǎng)頁數(shù)據(jù)之后發(fā)生的整個(gè)代理過程完全在國內(nèi),不再適用國際互聯(lián)網(wǎng)相關(guān)之規(guī)定。
所以說大家是可以放心地使用FastGithub的。
FastGithub提供完整的開源代碼讓小伙伴們學(xué)習(xí),也直接提供各個(gè)不同平臺(tái)的直接安裝程序,方便大家使用。
最新的一個(gè)安裝版本是5天前發(fā)布的2.0.4版本,作者也是一直在更新相應(yīng)的功能讓工具變得更加強(qiáng)大。
以windows-x64版本為例,只需雙擊運(yùn)行fastgithub.exe程序,就可以看到FastGithub啟動(dòng)成功的提示
當(dāng)我訪問下述地址時(shí),也可以清楚地看到FastGithub的響應(yīng)時(shí)間
其實(shí)僅就WINDOWS端的加速原理來說,可以用7個(gè)步驟來解釋:
- 客戶端訪問https://github.com
- 客戶端向dns查詢github.com的ip,F(xiàn)astGithub攔截dns數(shù)據(jù)包并偽造解析結(jié)果為127.0.0.1
- 客戶端請(qǐng)求到FastGithub的https://127.0.0.1:443
- FastGithub使用fastgithub.cer頒發(fā)服務(wù)器證書給客戶端
- FastGithub查詢和計(jì)算github.com最快的ip
- FastGithub與github.com進(jìn)行無sni的tls連接
- FastGithub將請(qǐng)求反向代理到https://github.com
就是這么的簡(jiǎn)單,但是卻是作者智慧的結(jié)晶,同時(shí)也大度的將這個(gè)結(jié)晶分享給了我們大家,所以大家以后有什么好東西,也記得要拿出來一起分享哦。
不管是想直接使用這款利器的、還是想研究相關(guān)代碼是如何實(shí)現(xiàn)的小伙伴,趕緊下載吧!