#3555 - New block 'defer' mode based on Facebook's BigPipe

Identifier #3555
Issue type Feature request or suggestion
Title New block 'defer' mode based on Facebook's BigPipe
Status Open
Tags

Type: Performance (custom)

Handling member Deleted
Addon core
Description See: https://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919

A new kind of 'defer' mode for blocks, similar to the current one but a bit more sophisticated

Rather than AJAX execution, the block is computed later in the same page request

A symbol in GLOBAL_HTML_WRAP.tpl, just before </body> would inject the late blocks

The block HTML would be copied to the correct DOM position using JavaScript

Block HTML generation would be done in parallel; using pcntl_fork, and short-lived persistent caching to buffer the data back to the main process

Combine with output streaming option for best performance

Allows the browser to pre-load all the JS and CSS references (that the smart cache has already injected), and even render most of the page, but doesn't require the less-efficient AJAX loading
Steps to reproduce

Additional information Drupal has implemented BigPipe.
Funded? No
The system will post a comment when this issue is modified (e.g., status changes). To be notified of this, click "Enable comment notifications".

Rating

Unrated