天下武功,唯快不破 go-pcurl

thimoonxy發表於2017-10-27

初衷

寫這個玩意的初衷是想解決海外研發往國內節點傳檔案慢的問題( 當然,這裡不考慮土堆攔路的問題) 一開始研發抱怨即便用了國際專線,既有的單線傳輸方案仍然沒有充分利用頻寬。 於是人家用torrent走公網對比了一下,完勝專線。雖然專線是有guarantee的,仍然被歪果仁嚴重鄙視。 可是生產環境,用torrent未免過於粗暴啊! 快的時候,入口流量竄了尖,你到底開不開清洗?是被DDOS了?業務受影響了?一臉懵。 網不好的時候,速度變成毛線咋辦,何意百鍊剛,化為繞指柔?

想到了大學時候一門基礎課程,叫什麼什麼拆裝實習。於是,萌生了拆range,併發download,然後重新組裝的辦法。聽起來很土吧。

go-pcurl

cURL in parallel way, Written in golang REPO

實際測試了一把

  • 用wget去官網下載docker.rpm,需要6分21秒
  • 同樣的url,用go-pcurl下載用了47秒

後面想想怎麼限制頻寬,是否可控還是很重要的。

萌新練武術,各位多指教 ;P

相關文章