2

Chrome has still not evolved when it comes to downloading things. I'm waiting for this 150mb file to get downloaded. Internet crashes at 90 mb and chrome does not picks it up again at 90. It again starts downloading from 0. Such a sophisticated browser and yet sucks at a simple thing :((

Comments
  • 3
    Are you sure the remote server you are downloading from supports that?
  • 0
    @asgs if that's the case then even Microsoft's site is sucking at this.
  • 4
    Chrome does support it. Check whether the server advertises a "Accept-Ranges: bytes" header
  • 4
    @shawshank As @12bitfloat said this is supported in HTTP and all browsers support it.

    Most large systems don't allow it though, for a couple of reasons:
    - load balancing - different underlying servers may return the same file in different ways (like different block sizes, different modified date / etag), and load balancer would have to ensure all requests go to the same node, which adds a lot of complexity
    - storage - file systems for object storage are optimised to allow quick retrieval of metadata and whole (large) objects, while protecting data integrity; adding random access within an object would again add a lot of complexity
    - CDN - CDN servers are optimised to cache response based on request; they don't decompose responses and check byte offsets, as upstream may use a different logic to handle ranges, so each different range would have to be cached separately, using up a lot of space
  • 2
    @hitko As always, seemingly simple features are actually very complicated to implement.
  • 0
    @Root Perhaps in the days of unreliable dial-up, when only the largest tech giants used some sort of distributed storage, this was a pretty good solution.

    Now that a single system has to serve millions of files and the amount of internal communication almost outranks actual data transfer, priorities are clearly elsewhere.
  • 0
    Probably that server does not allow downloading file using range headers. Chrome has the functionality!
  • 0
    I haven't seen range headers anywhere in eons...

    Mind you, I also haven't looked.
Add Comment