Quel genre d’applications puis je concevoir avec Symfony

De nombreux site internet, ecommerce et marketplaec sont tous développés par Symfony ! Dans cet article, nous allons vous parler des sites Web les plus chargés qui utilisent ce framework PHP très productif et partager notre propre expérience avec ce type de projets.

Tout d’abord, nous aimerions expliquer pourquoi nous pensons que Symfony est bien adapté pour cette tâche.

Pourquoi Symfony est idéal pour les grands sites Web ?

Construire de grands sites Web à l’aide de Symfony est facile car il possède de nombreuses fonctionnalités utiles :

  • Composer est un gestionnaire de dépendances chargé de maintenir les dépendances des composants PHP. Il installe et met à jour les bibliothèques utilisées dans le projet.
  • Dans Symfony, tout est organisé à l’aide de bundles (ensemble structuré de fichiers) faciles à gérer.
  • Il est possible d’exécuter des commandes de console pour automatiser certaines tâches.
  • Barre d’outils de débogage Web qui fournit des informations utiles sur les problèmes trouvés sur les pages des sites Web utilisant Symfony

Qui utilise Symfony ?

Les grands sites Web qui utilisent Symfony appartiennent à différentes catégories et industries. Par exemple, BlaBlaCar est un site pour trouver d’autres passagers et covoiturage. Plus de 10 millions de personnes l’utilisent chaque trimestre. Symfony est utilisé dans le backend des sites Web et des applications ainsi que dans le backoffice.

Le service de streaming musical Spotify s’appuie également sur Symfony. Spotify compte plus de 75 millions d’utilisateurs actifs dont 20 millions d’abonnés payants. En moyenne, le service traite 600 000 requêtes par seconde avec plus de la moitié du trafic provenant d’appareils mobiles.

L’objectif principal était de trouver un cadre flexible pour isoler facilement les composants à tester, créer des URL personnalisées avec routage et utiliser l’injection de dépendances (aide à tout remplacer pour répondre aux besoins personnalisés). La fiabilité de base était également un critère.

L’entreprise avait besoin d’un nouveau cadre bien documenté pour un apprentissage plus rapide. Symfony 5 a répondu à leurs demandes. Les détails techniques sont abordés dans la présentation SymfonyLive

De grands sites Web construits sous Symfony dont nous avons parlé sont un excellent argument pour choisir ce framework PHP pour votre prochain projet. Vous pouvez trouver plus de projets construits avec Symfony dans notre portfolio ou dans Symfony Showcase. Ci-dessous, nous racontons notre propre expérience avec le développement d’un grand site Web Symfony pour l’un de nos clients.

Symfony et autres technologies utilisées

L’API est utilisée pour gérer tous les processus commerciaux de l’entreprise. Le site de vente (frontend) est utilisé pour vendre des billets et se connecte à l’API via le backend. Simple CMS est utilisé pour contrôler l’apparence et le contenu disponible sur le site Web. Il a été écrit en Symfony en utilisant des bundles studio et tiers.

Le système de gestion de l’entreprise (backend) comprend plusieurs composants clés responsables de la planification des voyages, de la notification des utilisateurs à leur sujet, de la fixation des prix et de la gestion des agences et partenaires. Toutes ces données sont visualisées avec la bibliothèque D3.js.

Compte tenu de la nature du service, le Système d’Information Géographique (SIG) est une composante importante qui :

  • Reçoit, filtre et traite les données sur l’emplacement du bus.
  • Prépare les données à afficher sur la carte en temps réel.
  • Enregistre les données sur le retard d’arrivée du bus.
  • Analyse les données accumulées sur les retards nécessaires pour ajuster les horaires de bus.
  • Pour exécuter efficacement les fonctions susmentionnées, le système doit traiter un grand nombre de demandes simultanément. C’est pourquoi nous avons utilisé un micro-cadre Silex rapide et léger pour le construire. Il possède tous les composants de base nécessaires et peut être facilement étendu avec des composants Symfony si nécessaire.

Enfin, je voudrais dire que le processus de création de grands sites Web à l’aide de Symfony nécessite une planification sérieuse. Vous devez prévoir suffisamment de temps pour prendre des décisions concernant l’architecture et choisir les composants qui aideront à atteindre les objectifs du client. En même temps, Symfony est assez flexible et peut être utilisé pour créer des sites Web de différentes tailles et types : des hébergements vidéo aux magasins de commerce électronique.