Making Drupal fly — The fastest Drupal ever is near!
Update September 24, 2015: the fastest Drupal ever is no longer near, it is here!
Together with Fabian Franz from Tag1 Consulting, I had a session about Big Pipe in Drupal 8, as well as related performance/cacheability improvements. Fabian’s demo of BigPipe and other render strategies in the first ten minutes are especially worth watching :)
I’ll let Fabian’s session description speak for itself:
Come and join us for a wild ride into the depths of Render Caching and how it enables Drupal to be faster than ever.
The Masterplan of Drupal Performance
Here we will reveal the TRUE MASTERPLAN of Drupal Performance. The plan we have secretly (not really!) been implementing for years and are now “sharing” finally with all of you! (Well you could look at the issue queue too or this public google doc, but this session will be more fun!)
Learn what we have in store for the future and what has changed since we last talked about this topic in Amsterdam and why Drupal 8 will even be more awesome and why you don’t have to wait and can do it all in Drupal 7 right now with the help of the render_cache module (with some extra work).
Get the edge advantage of knowing more
Learn how to utilize cache contexts to vary the content of your site, cache tags to know perfectly when items are expired and cache keys to identify the objects - and what is the difference between them.
Learn how powerful ‘placeholders’ will allow the perfect ESI caching you always wanted and how it will all be very transparent and how you can make your modules ready for the placeholder future.
See with your own eyes how you can utilize all of that functionality now on your Drupal 7 and 8 sites.
Get ready for a new area of performance
We will show you:
- The biggest Do’s and Don’ts when creating render-cache enabled modules and sites
- Frontend performance pitfalls and why front-end performance is tied to backend performance more than you thought
- Why libraries[] are so great and why single CSS/JS files make trouble.
- Common scenarios and how to solve them (mobile sites variation, cookie variation, etc.)
- Drupal using an intelligent BigPipe approach
Get to know the presenters
This session will be presented by Wim Leers and Fabian Franz. Wim implemented a lot of what we show here in Drupal 8 and made the APIs easy and simple to use and made cache tags and #post_render_cache a very powerful concept. Fabian has prototyped a lot of this concepts in his render_cache module, introduced powerful Drupal 8 concepts into Drupal 7 and is always one step ahead in making the next big thing. Together they have set out on a crusade to rule the Drupal Performance world to bring you the faster Drupal ever!
Comments
Caching in general is a very complex concept. As a simple C++ programmer I never had to deal with it. For me to understand OOP or functional programming is bit easier.
Cache placeholders, tags, contexts, max-age and now bubbleable metadata these are the concepts I learnt form your blog posts and understood their technical details form your looooong comments on d.o issue queue.
I have listened this sentence 10 times:
it makes me realize how complex is Drupal rendering system is. The demo was impressive. I have seen dynamic asset loading on web before but haven’t seen big pipe in action. The ability to do it in Drupal 8 make me brag about it a lot more. Kudoos to Fabian for showing that.
As I said, I know the idea behind cache meta data but the way you simply explained it, it’s just awesome and it cleared my concepts about it. Thank you for that.
Thank you for all the work on Drupal render system. Thank you for making Drupal fast. The session is incredible.
Here’s a high quality llama for you: https://drscdn.500px.org/photo/97975049/m%3D2048/6cfcda0c65cd5774bc7da5e4f940b786.
Thank you very much for your kind words (and the awesome llama photo — I had to edit your comment to make the link visible, thanks for telling me on Twitter).
But I’m especially glad that the explanations made things “click” for you :) Very glad to hear that! I’ll make sure the explanations find their way to the documentation on Drupal.org.