Aller au contenu principal
Retour au blog

SymfonyOnline January 2025 : Twig, Messenger et les talks essentiels

Flavien Métivier21 janvier 20254 min

Les 16 et 17 janvier 2025, la communauté Symfony s'est réunie en ligne pour deux jours denses : 30 talks, des retours de production à fort volume, et une question posée directement par Fabien Potencier — Twig a-t-il encore sa place face à React, Vue et Svelte ? Voici les quatre sessions les plus actionnables pour les équipes qui font tourner du Symfony sérieux en production, et ce que le core team signale pour l'année à venir.

Twig toujours pertinent en 2025 — la réponse de Fabien Potencier

La session "Twig : Still Relevant in 2025?" de Fabien Potencier a posé frontalement la question que beaucoup évitent. La réponse est sans concession — et sans nostalgie : oui, Twig reste le bon choix pour la majorité des projets. Couplé à Stimulus via Symfony UX et à Turbo pour les transitions sans rechargement complet de page, Twig 3.x couvre l'immense majorité des usages applicatifs sans sacrifier la productivité côté serveur. Fabien a surtout mis en lumière le coût réel caché d'un front JavaScript découplé : deux pipelines CI/CD, deux équipes, gestion CORS, hydratation client, contrats d'API à maintenir dans la durée. Pour les applications B2B, les back-offices et les plateformes métier — soit l'essentiel du parc Symfony existant — Twig + UX Components reste la voie la plus directe vers la production. La feuille de route Twig 3.x présentée lors de la conférence confirme un moteur activement maintenu, pas un outil en fin de vie.

Symfony Messenger à grande échelle : les patterns qui passent vraiment en prod

Plusieurs sessions ont traité Messenger dans des contextes à fort volume — plusieurs millions de messages par jour, topologies multi-workers, gestion des pics de charge. Les conclusions convergent sur trois axes : choisir Redis Streams plutôt que le transport Doctrine dès que le volume devient sérieux, isoler les files par priorité plutôt que par type de message, et instrumenter la consommation avec Prometheus dès le premier déploiement. Le pattern critique à retenir : un worker dédié par file, supervisé par Supervisor ou Kubernetes. Ne jamais mélanger les priorités dans un seul messenger:consume en production — un message lent bloque tout le reste.

# config/packages/messenger.yaml — Symfony 7.2 + Redis Streams
framework:
    messenger:
        failure_transport: failed

        transports:
            high_priority:
                dsn: '%env(REDIS_DSN)%'
                options:
                    stream: 'messages:high'
                    group: 'workers'
                    consumer: '%env(HOSTNAME)%'
                retry_strategy:
                    max_retries: 3
                    delay: 500
                    multiplier: 2
                    max_delay: 10000

            low_priority:
                dsn: '%env(REDIS_DSN)%'
                options:
                    stream: 'messages:low'
                    group: 'workers'
                    consumer: '%env(HOSTNAME)%'
                retry_strategy:
                    max_retries: 5
                    delay: 2000
                    multiplier: 3

            failed:
                dsn: '%env(REDIS_DSN)%'
                options:
                    stream: 'messages:failed'

        routing:
            App\Message\OrderConfirmation: high_priority
            App\Message\ReportGeneration: low_priority
            App\Message\ExportRequest: low_priority

Besoin d'un expert Symfony ?

Réserver un appel

Les 4 talks à retenir de SymfonyOnline January 2025

  • "Twig : Still Relevant in 2025?" — Fabien Potencier. Le plaidoyer argumenté pour le rendu serveur en 2025, benchmarks à l'appui, feuille de route Twig 3.x et démonstration Symfony UX en live. Incontournable si tu dois défendre Twig face à un client qui veut "passer à React".
  • Symfony Messenger en production à grande échelle — architecture Redis Streams multi-workers, dead letter queues, supervision Kubernetes et monitoring Prometheus. Cas concret de déploiement à plusieurs millions de messages par jour, avec les pièges réels rencontrés.
  • AssetMapper & Symfony UX : point de maturité — l'état du remplacement de Webpack Encore après 18 mois en production, les composants UX disponibles sans build step JavaScript, et les cas où AssetMapper ne suffit pas encore.
  • Symfony 7.2 : les nouveautés qui changent le quotidien — revue des apports de la dernière mineure (PHP 8.4, Attributes partout, Clock component, MapRequestPayload enrichi). Le talk le plus directement applicable au sprint suivant.

Ce que le core team signale pour 2025

Le signal transversal de ces deux jours est sans ambiguïté : le core team consolide plutôt qu'il ne révolutionne. Twig n'est pas condamné, Messenger est mature pour les charges sérieuses, et Symfony 7.2 + PHP 8.4 forment un socle stable sur lequel investir sans crainte d'obsolescence rapide. La direction UX — Stimulus, Turbo, AssetMapper — est confirmée comme voie principale pour les équipes qui veulent rester full-Symfony sans sacrifier l'expérience utilisateur. La prochaine étape sera Symfony 7.3 au printemps, mais rien d'annoncé lors de cette édition ne remet en cause les arbitrages techniques de ce début d'année.

Si tu veux évaluer si ton application exploite déjà ces patterns — files Messenger isolées par priorité, Redis Streams, UX Components, AssetMapper — un Bear Scan te donne une image claire de l'écart entre ta base de code et l'état de l'art Symfony 7.2, en moins d'une semaine, sans engager une refonte complète.

Cet article vous a plu ? Partagez-le !

Besoin d'un expert Symfony ?

20 ans d'expérience sur l'écosystème PHP/Symfony.