[PP-1] Disable "Bandwidth Optimization" when serving with HTTP2

Created on 11 February 2017, almost 8 years ago
Updated 21 August 2023, about 1 year ago

Drupal 8 can concatenate assets like CSS and JS. This can greatly reduce the amount of HTTP request. But with HTTP2 the overhead of an HTTP request is now very low and concatenation seem useless and can degrade performances.

Perhaps the first step would be to create a notice in admin/reports/status if you a in HTTP2 and use bandwidth optimization for assets.

There is a lot to explore like server push and content prioritization. Peoples have to understand that HTTP2 turn best practices upside down.

โœจ Feature request
Status

Postponed

Version

11.0 ๐Ÿ”ฅ

Component
Asset libraryย  โ†’

Last updated 1 day ago

No maintainer
Created by

๐Ÿ‡จ๐Ÿ‡ญSwitzerland gagarine

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • ๐Ÿ‡ฌ๐Ÿ‡งUnited Kingdom catch

    Moving to needs more info. There's also the issue that aggregation and minification are linked.

    On top of this, the sheer number of elements that CSS and JavaScript would add to a page would increase the amount of HTML to download and parse - it could be hundreds.

    I think we'd be better off looking at ๐Ÿ“Œ Use the asset library dependency tree to improve CssCollectionGrouper & JsCollectionGrouper Active and revisiting this only after that issue is resolved.

  • Status changed to Postponed about 1 year ago
  • ๐Ÿ‡ง๐Ÿ‡ชBelgium wim leers Ghent ๐Ÿ‡ง๐Ÿ‡ช๐Ÿ‡ช๐Ÿ‡บ

    +1!

    The general advice on the web as well as 99% of articles on this subject do not apply to Drupal, because Drupal is extremely modular, with each Drupal module able to add 1 or more CSS/JS files, and potentially hundreds of installed modulesโ€ฆ resulting in indeed hundreds of CSS or JS files, with each one tiny.

    I have yet to see any data at all on how hundreds of tiny CSS/JS files would impact front-end performance on HTTP/2.

    But given that each even for far fewer and far larger files, it wasnโ€™t even feasible stopping bundling and relying entirely on H2 until at least a few years ago, it seems unlikely the increase in overhead could ever be sufficiently compensated ๐Ÿ˜…

    (The only way that could IMHO conceivably happen is if at least we let asset-library-level bundling. That would then also result in a nice simplification of the asset handling logic. But โ€ฆ on its own thatโ€™s probably not worth it either. And it likely still results in a performance regression.)

  • ๐Ÿ‡ธ๐Ÿ‡ฎSlovenia KlemenDEV

    There is the ADVAGG bunder module where one can set a number of files it is aggregated to, meaning one can set it to eg. 15 files which is good trade-off for HTTP2. I think something similar in core would be very beneficial.

Production build 0.71.5 2024