HTTP Caching with Varnish

8.3.2024

Conference: Drupal Mountain Camp, Davos, Switzerland
Title: HTTP Caching with Varnish
Links: slides

Get an introduction to caching "on the edge".

With the Varnish caching proxy, you can greatly increase the speed of websites and handle a lot more load. The basics are quite simple once you understand how the cache handling in HTTP works, so we will look into that first. We then go over cache invalidation, cache tagging strategies and have a look at Edge Side Includes (ESI).

Read more

varnish http caching conference


Decoupling an application with Symfony Messenger

23.2.2024

Conference: Confoo 2024, Montreal, Canada
Title: Decoupling an application with Symfony Messenger
Links: slides

Quick response times are crucial. Time consuming tasks triggered in web requests should be executed asynchronously, if at all possible. In this talk I will give a short overview of what message queues are and then show a case study how we split up an application into smaller services and how we use message queues to coordinate the services.

php conference architecture message queues libraries web


Going crazy with caching: Caching pages of logged in users

21.2.2024

Conference: Confoo 2024, Montreal, Canada
Title: Going crazy with caching: Caching pages of logged in users
Links: slides

You know how HTTP caching works but need more? In this talk we look into ways to cache personalized content. We will look at Edge Side Includes (ESI) to tailor caching rules of fragments, and at the user context concept to differentiate cache entries by permission groups instead of by individual users. The FOSHttpCache library in combination with either Varnish or the Symfony HttpCache reverse proxy are a big help to leverage the user context concept.

caching http performance varnish conference


Cache HTTP pour les API REST

21.9.2023

Conference: API Platform Con 2023, Lille
Title: Cache HTTP pour les API REST
Links: slides

L'utilisation d'un reverse proxy de mise en cache permet de “scaler” vos API tout en améliorant leur temps de réponse. La clé d'une mise en cache réussie est de faire en sorte que votre API REST utilise correctement HTTP et emploie les bonnes instructions de cache.

Durant ce talk, je vous expliquerai comment gérer l'invalidation du cache et comment faire du cache tagging. Pour aller encore plus loin dans le traitement des listes de résultats, je vous montrerai également comment utiliser les Edge Side Includes (ESI).

php caching conference rest


HTTP Caching

26.6.2023

Locations: 26.6. Guild42 Bern, 27.6. Web Zurich, 28.6. Webnsday St.Gallen
Title: HTTP Caching
Links: slides

Joint user group tour in Switzerland together with Thijs Feryn. I did a talk on HTTP Caching, Thijs a talk on Varnish Cache.

Whether with CDN, a reverse proxy or to avoid problems with browser caching, the basis for correct caching are the HTTP caching specifications. In the first part of the talk, David Buchmann shows us how to properly use the caching headers to achieve the desired result.

php caching


Beyond REST maturity levels

24.2.2023

Conference: Confoo Montreal 2023
Title: Beyond REST maturity levels
Links: slides

Insights from building a real life, high-load REST API.

Implementing a REST API is not only about designing correct resource URLs. I will talk about the software and system engineering part it takes to build a data API. I will show concrete examples from a project where we gather data from dozens of different services and systems and build a real-time capable data API. The main technology stack is Symfony, Elasticsearch and Varnish.

php conference rest


Deploying PHP Applications with zero downtime

23.2.2023

Conference: Confoo Montreal 2023
Title: Deploying PHP applications with zero downtime
Links: slides

The process of replacing your code with a new version can be tricky. In this talk, I will present strategies to deploy your code without interrupting the application, including how to handle database schema changes without breaking running code.

php conference server


Decoupling an Application with Symfony Messenger

18.11.2022

Conference: SymfonyCon Disneyland Paris 2022
Title: Decoupling an Application with Symfony Messenger
Links: slides

Quick response times are crucial. Time consuming tasks triggered in web requests should be executed asynchronously, if at all possible. In this talk I will give a short overview of what message queues are and then show a case study how we split up an application into smaller services and how we use message queues to coordinate the services.

php conference architecture message queues libraries web client


One of the most esoteric bugs i ever found in a PHP application

16.9.2022

I spent so much time tracking down this bug that I want to tell you the story of what happened.

A while ago, I wanted to see if the Doctrine PHPCR-ODM tests work fine with PHP 8.1. PHPCR-ODM supports two different storage layers, Doctrine DBAL and Jackrabbit. With PHP 8.1 and DBAL storage, some tests failed, but those same tests succeeeded with the Jackrabbit storage. That lead me to check if something might be off with the storage layer, but the extensive test suites of both storage layers is fine with PHP 8.1.

Read more

php debugging