Hey all, people keep saying about how great the concurrency is in golang. To be honest, I am pretty much a novice in this.
So just wrote a download accelerator in golang using it's much awesome parallel feature, the source of which can be found here: https://github.com/rghose/go-parallel-downloader
Here are a few results:
This was with GOMAXPROCS=2, threads = 5 with Chunk Size = 10 KB
So well, the chunk size of download did make a lot of difference, since the number of connections to download the thing would decrease, too many connections does not help in speed up
So just wrote a download accelerator in golang using it's much awesome parallel feature, the source of which can be found here: https://github.com/rghose/go-parallel-downloader
Here are a few results:
URL Downloaded | Time taken by wget | Time taken by Golang |
http://get.videolan.org/vlc/2.2.5.1/macosx/vlc-2.2.5.1.dmg | 1m3.375s | 0m26.609s |
This was with GOMAXPROCS=2, threads = 5 with Chunk Size = 10 KB
So well, the chunk size of download did make a lot of difference, since the number of connections to download the thing would decrease, too many connections does not help in speed up