Symfony

Cache & prestaties

Cache pools, adapters, tags, cache-invalidatie, HTTP cache, ESI, Varnish-integratie

20 gespreksvragen·
Mid-Level
1

Welke interface gebruikt Symfony om het PSR-6 cache-systeem te implementeren?

Antwoord

Symfony implementeert de PSR-6-standaard via de CacheItemPoolInterface. Deze interface definieert de methoden getItem(), hasItem(), deleteItem(), save() en clear() voor het beheren van cache-items. De Cache-component van Symfony biedt verschillende adapters (Redis, Memcached, Filesystem, enz.) die allemaal deze interface implementeren, wat interoperabiliteit met andere PSR-6-compatibele PHP-bibliotheken garandeert.

2

Wat is de standaard cache-adapter die in Symfony is geconfigureerd voor de ontwikkelomgeving?

Antwoord

In de ontwikkelomgeving gebruikt Symfony standaard de ArrayAdapter, die de cache in het geheugen opslaat. Deze cache is niet persistent tussen requests, wat ideaal is voor ontwikkeling omdat het problemen met verouderde cache bij codewijzigingen voorkomt. In productie wordt aanbevolen een persistente adapter zoals Redis of Memcached te gebruiken voor betere prestaties.

3

Hoe maak je een aangepaste cache pool aan in de Symfony-configuratie?

Antwoord

Aangepaste cache pools worden gedefinieerd onder de sleutel framework.cache.pools in de configuratie. Elke pool kan zijn adapter, standaardlevensduur (default_lifetime) en optioneel tags opgeven. Een 'app.cache.products'-pool met RedisAdapter maakt het bijvoorbeeld mogelijk om de productcache onafhankelijk van andere gegevens te beheren, wat gerichte invalidatie vergemakkelijkt.

4

Welke methode gebruik je om een waarde uit de cache op te halen met een berekenings-callback als deze ontbreekt?

5

Wat is het belangrijkste voordeel van cache tags in Symfony?

+17 gespreksvragen

Beheers Symfony voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis