You don't really want 300/3000/30000 modules where you have to "load",
"parse", then "request (dependencies)".  You really need your dependencies,
pre-ordered and pre-loaded (that is bundled) if you want your "empty cache"
clients to get a good experience.  SPYD is only one piece of a puzzle it
isn't a silver bullet for solving module loading. If you want both to have
an ideal experience you want bundles of modules and delta compression of
your changes.  Unfortunately, there isn't a good delta compression solution
yet but I have hopes that SDCH might be made more general and standard.


On Mon, Jun 16, 2014 at 4:54 PM, John Barton <johnjbar...@google.com> wrote:

>
>
>
> On Mon, Jun 16, 2014 at 4:49 PM, caridy <car...@gmail.com> wrote:
>
>> > I thought SPDY was, to quote wikipedia, about: "reducing web page load
>>> latency and improving web security"
>>> > How does SPDY help when the issue is lots of small requests ping
>>> ponging back and forth between client and server?
>>>
>>> SPDY multiplexes the requests across the same connection, which is
>>> essentially a runtime bundling process at the browser level without the
>>> hazards of doing it manually, and getting the benefit of the granular
>>> caching at the browser level.
>>>
>>
>> Just so I understand, if the dependency tree a depth of 20 and say 300
>> modules how many round trips from client to server will you need using
>> SPDY? The competition (ES5 prebuilt) uses one.
>>
>>
>> One roundtrip, one cookie is sent, and 300 entries are added into cache.
>> Imagine making a change in one of those 300 modules, today, with bundling,
>> the ES5 prebuilt entry in cache gets stale, and you now have to loaded the
>> whole thing, while using SPDY, only one entry gets stale, so, next time the
>> user visits the app/page, only that piece will have to be loaded over the
>> wire, the rest is just going to rely on the browser's cache. This is a
>> killer feature, specially if you're doing continues deployment.
>>
>
> I agree this does sound great, I just don't see how the browser can know
> which 300 entries to request until it parses the first entry. If on the
> other hand you mean the server parses the modules, then it sounds
> equivalent to bundling.
>
>
>>
>>
>>> > (Do we want to wait for SPDY in every browser before we use ES6
>>> modules?)
>>>
>>> All major browsers (including safari) support SPDY today. But the point
>>> is, we should not consider "bundling" as a prime use-case for modules,
>>> because it is not going to be important at all.
>>
>>
>>
>>
>>> If people want to do bundling, they will have plenty of options to do
>>> so, even with the current module specs.
>>>
>>
>> Could you enumerate these? I thought that there was no option, which is
>> why we are asking.
>>
>>
>> We have been working on transpilers to transform ES6 modules into dynamic
>> modules that can in fact be used today, but also tomorrow, these dynamic
>> modules (which are covered in the specs today under the loader section) can
>> be bundle up. In other words, you can use the same tools that you use
>> today, e.g.: browserify, and they will work just fine.
>>
>
> Ok, you must mean "TC39 don't have any options, you're on your own".
>
>
>>
>> /caridy
>>
>
>
> _______________________________________________
> es-discuss mailing list
> es-discuss@mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to