Description
Is your feature request related to a problem? Please describe
The full VM OS image download is slow from Australia, it took around 20 mins
Feature Request: Faster or Local OS load for (big) images
threefoldtech/test_feedback#419
Describe the solution you'd like
There are two kind of solutions:
-
from hub side
It is already described on https://git.ourworld.tf/tfgrid/circle_engineering/issues/33: create replica of flist hub that are closer to the users -
speedup the download from
zos
side
rfs
download the block onread
operation. Because the download triggered byio.Copy
(Lines 148 to 152 in 0ea6170
- OS try to read some block
-rfs
call remotehub
to download the block
- repeat until finish
The process happens sequentially, hence very slowSome alternatives:
a. Do the download onopen
, it is what happens in0-fs
IMO It is quite a big change from architecture point of view, i currently don't know the impact of this change
b. paralelize theio.Copy
It is a simple solution, but if the slowness happen on other usecase, we have to apply the same technique, which might be error prone.
While making hub replica would help to speedup the issue, i think solution 2.b also worth to do because it would further speedup the process and also quite easy to do.