AFUP Forum PHP 2018 Baromètre Planète PHP

La parole est aux speakers : Hannes Van De Vreken

Jusqu’au PHP Tour Montpellier 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Caching with PSRs

In this talk you will learn what PSR-6 and PSR-16 are, why they are designed like they are, what the differences are, and how to use them. From the provided interfaces, the virtual package on Packagist.org, to the implementations available. Everything will be explained for both beginners and more experienced developers. We will dive into implementations, cache stampede protection, all using libraries we can find on Packagist.org. We will also show how to start using it today in our current applications by using adapters. The entire talk will be accompanied with code samples and live demos, showing both working and failing caching systems.

Salle Morpheus
18/05/2018
10:15-10:55

Le speaker

Hannes Van De Vreken
Hannes Van De Vreken
Software Engineer and Developer Advocate at getstream.io, open source user and contributor, organiser of meetups in Belgium and also an aspiring triathlete

You will talk about how to use PSR for caching : did you have any tips on what to cache and when we need a cache mechanism ?

Before you cache, you need to be aware of your application’s behaviour. Profiling is a good start. By logging information, you can find places where caching could help your application’s performance the most. You can cache anything that is idempotent, runs several times with the same input and same output, and has a high latency due to the nature of the job. You can then start off with the quick wins: cache a slow query that runs thousands of times. Next up: things that are extremely slow but only need to happen a handful of times. You can even pre-compile that in a back-ground job and store it. After that it gets harder: a fast query that runs millions of times, maybe. You can save some time by avoiding millions of round-trips to the DB and lower the load on the DB.

Also beware of cache invalidation. Don’t make your caching layer too complex or you’ll be chasing caching artefacts. Your caching layer is supposed to save you time, not spend more time. Last tip: if your caching layer fails, your app should still work, albeit slower 😉

Come see my talk for more tips!

You organize meetups in Belgium : how’s the community there ?

I do! We have a very vibrant community! Nearly every province (similar size as French departments) has its own Meetup group, and then some. I am very happy I was able to give a stage to some new speakers in the past who then took their talks to conferences in other countries. Although it’s getting increasingly hard to find new speakers, these days. This is something all meetup organisers say.

You are a runner, is there any similitude between preparing a marathon and a technical talk?

Hahaha 🙂 You could say yes. If you practised a lot, then a talk/race should be easy. If your goal is to finish a marathon this is true. If you want to chase a very fast time (maybe a personal best), then a race is harder than delivering a talk: you want to push yourself harder than you’ve ever done before in training. In a technical talk, you generally want to be a bit more secure and make sure you get to the end of your presentation without accidents. You don’t want to push the boundaries on stage.

La conférence

Caching with PSRs

In this talk you will learn what PSR-6 and PSR-16 are, why they are designed like they are, what the differences are, and how to use them. From the provided interfaces, the virtual package on Packagist.org, to the implementations available. Everything will be explained for both beginners and more experienced developers. We will dive into implementations, cache stampede protection, all using libraries we can find on Packagist.org. We will also show how to start using it today in our current applications by using adapters. The entire talk will be accompanied with code samples and live demos, showing both working and failing caching systems.

Salle Morpheus
18/05/2018
10:15-10:55

Le speaker

Hannes Van De Vreken
Hannes Van De Vreken
Software Engineer and Developer Advocate at getstream.io, open source user and contributor, organiser of meetups in Belgium and also an aspiring triathlete

Autres interviews

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation des cookies pour améliorer votre navigation. plus d'infos

1. Qu’est-ce qu’un cookie?

Un Cookie est un petit fichier texte enregistré sur votre terminal (ordinateur, tablette, smartphone, etc.), à l’occasion de la consultation d’un service en ligne grâce à votre logiciel de navigation. Il permet à son émetteur d’identifier le terminal dans lequel il est enregistré, pendant la durée de validité ou d’enregistrement du Cookie. Lors de la consultation de notre site Internet, des informations relatives à la navigation de votre terminal sont susceptibles d'être enregistrées dans ces fichiers dits "Cookies". Ces derniers sont installés sur votre terminal, sous réserve des choix que vous auriez exprimés concernant les Cookies et que vous pouvez modifier à tout moment.

2. A quoi servent les cookies émis sur notre site ?

Seul l’émetteur d’un cookie est susceptible de lire ou de modifier les informations qui y sont contenues.
Les cookies utilisés sur notre site permettent :

3. Vos choix concernant les cookies

Vous disposez de différents moyens pour gérer les cookies. Tout paramétrage que vous pouvez entreprendre sera susceptible de modifier votre navigation sur notre site et sur Internet en général et vos conditions d'accès à certains services de notre site nécessitant l'utilisation de cookies. Vous pouvez à tout moment exprimer et modifier vos souhaits en matière de cookies, par les moyens décrits ci-dessous. L'accord sur les cookies L'enregistrement d'un cookie dans un terminal est essentiellement subordonné à la volonté de l'utilisateur du terminal, que celui-ci peut exprimer et modifier à tout moment et gratuitement à travers les choix qui lui sont offerts par son logiciel de navigation. Si vous avez accepté dans votre logiciel de navigation l'enregistrement de cookies dans votre terminal, les cookies intégrés dans les pages et contenus que vous avez consultés pourront être stockés temporairement dans un espace dédié de votre terminal. Ils y seront lisibles uniquement par leur émetteur.

Le refus des cookies Si vous refusez l'enregistrement de cookies dans votre terminal, ou si vous supprimez ceux qui y sont enregistrés, vous ne pourrez plus bénéficier d'un certain nombre de fonctionnalités qui sont néanmoins nécessaires pour naviguer dans certains espaces de notre site. Tel serait le cas si vous tentiez d'accéder à votre compte ou à votre abonnement qui nécessite de vous identifier. Tel serait également le cas lorsque nous, ou nos prestataires, ne pourrions pas reconnaître, à des fins de compatibilité technique, le type de navigateur utilisé par votre terminal, ses paramètres de langue et d'affichage ou le pays depuis lequel votre terminal semble connecté à Internet. Le cas échéant, nous déclinons toute responsabilité pour les conséquences liées au fonctionnement dégradé de nos services résultant de l'impossibilité pour nous d'enregistrer ou de consulter les cookies nécessaires à leur fonctionnement et que vous auriez refusés ou supprimés. Les choix offerts par votre logiciel de navigation Vous pouvez configurer votre logiciel de navigation de manière à ce que des cookies soient enregistrés dans votre terminal ou, au contraire, qu'ils soient rejetés, soit systématiquement, soit selon leur émetteur. Vous pouvez également configurer votre logiciel de navigation de manière à ce que l'acceptation ou le refus des cookies vous soient proposés ponctuellement, avant qu'un cookie soit susceptible d'être enregistré dans votre terminal. Pour la gestion des cookies et de vos choix, la configuration de chaque navigateur est différente. Elle est décrite dans le menu d'aide de votre navigateur, qui vous permettra de savoir de quelle manière modifier vos souhaits en matière de cookies. Selon votre navigateur, consultez le lien ci-dessous pour configurer votre navigateur et refuser les cookies :