SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
Le PHP chez Deezer
Jean Pasdeloup
Senior Software Engineer
- Catalog Team
Arrivé il y a 3 mois
= +
530 GB pour la base tampon d’import
200 GB pour la base catalogue de production
= +
= +
530 GB pour la base tampon d’import
200 GB pour la base catalogue de production
sandbox
catalog
flow data
payment
user dataproduction
catalog
Provider
data
catalog
back-office
Deezer Legacy
Monolithic PHP application
IOS / Android / Windows / BlackBerry
www.deezer.com
api
Fingerprint
manager
partners
payment
BO NGPayment
Analyses
Deezer NG!
Deezer Business
Code (aka Korn)
● Découpé en domaines
● Modélisé en s’inspirant
du DDD (Domain Driven
Design)
● Framework agnostic
Des applications
● Point d’entrée pour
utilisateurs (BOs) ou
systèmes tiers (APIs)
● Basées sur Symfony3
(mais pas obligatoire)
● Bibliothèque de bundles
communs
Command Bus
● Accès des applications aux
domaines uniquement via
Command Bus
● Command: demande
d’action
● Query: requête sans action
Principe fondamental: l’isolation
Isolation “horizontale” entre les domaines fonctionnels
Isolation “verticale” entre les couches techniques
Le changement, c’est maintenant !
CONCLUSION
● Deezer c’est du PHP/MySQL depuis toujours,
● Forcément, y a du legacy...
● Mais c’est en train de devenir du beau PHP !
Continuez de nous suivre sur Twitter
@deezerdevs
THANK YOU
BY THE WAY, ON RECRUTE!
Pauline FARINA
pfarina@deezer.com
@FarinaPauline
Guillaume GRILLAT
ggrillat@deezer.com
@grillatg
http://jobs.deezer.com
Lead Web Engineer
Senior Backend Engineer
Web Engineer
etc.

Contenu connexe

En vedette

Analyse combinée crawl + logs - Search Foresight & Botify
Analyse combinée crawl + logs - Search Foresight & BotifyAnalyse combinée crawl + logs - Search Foresight & Botify
Analyse combinée crawl + logs - Search Foresight & BotifyPhilippe YONNET
 
Chapitre2 prise en_main_kibana
Chapitre2 prise en_main_kibanaChapitre2 prise en_main_kibana
Chapitre2 prise en_main_kibanaFabien SABATIER
 
Chapitre3 elk concepts_avances
Chapitre3 elk concepts_avancesChapitre3 elk concepts_avances
Chapitre3 elk concepts_avancesFabien SABATIER
 
IDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUIDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUCHAOUACHI marwen
 
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...Guillaume MOCQUET
 
ElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementMohamed hedi Abidi
 
Beginner's Guide to SIEM
Beginner's Guide to SIEM Beginner's Guide to SIEM
Beginner's Guide to SIEM AlienVault
 
Daily Life Around the World in January
Daily Life Around the World in JanuaryDaily Life Around the World in January
Daily Life Around the World in Januarymaditabalnco
 
Elasticsearch - Montpellier JUG
Elasticsearch - Montpellier JUGElasticsearch - Montpellier JUG
Elasticsearch - Montpellier JUGDavid Pilato
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securiteBorni Dhifi
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic searchJEMLI Fathi
 
Point de vue beijaflore politique sécurité
Point de vue beijaflore  politique sécuritéPoint de vue beijaflore  politique sécurité
Point de vue beijaflore politique sécuritéMaxime de Jabrun
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Silicon Comté
 

En vedette (19)

Analyse combinée crawl + logs - Search Foresight & Botify
Analyse combinée crawl + logs - Search Foresight & BotifyAnalyse combinée crawl + logs - Search Foresight & Botify
Analyse combinée crawl + logs - Search Foresight & Botify
 
Chapitre2 prise en_main_kibana
Chapitre2 prise en_main_kibanaChapitre2 prise en_main_kibana
Chapitre2 prise en_main_kibana
 
Splunk
SplunkSplunk
Splunk
 
Chapitre3 elk concepts_avances
Chapitre3 elk concepts_avancesChapitre3 elk concepts_avances
Chapitre3 elk concepts_avances
 
IDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUIDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAU
 
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...
[Sildes] plateforme centralisée d’analyse des logs des frontaux http en temps...
 
Rapport projet pfe
Rapport projet pfeRapport projet pfe
Rapport projet pfe
 
IPTV
IPTVIPTV
IPTV
 
ElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementElasticSearch : Architecture et Développement
ElasticSearch : Architecture et Développement
 
Beginner's Guide to SIEM
Beginner's Guide to SIEM Beginner's Guide to SIEM
Beginner's Guide to SIEM
 
Daily Life Around the World in January
Daily Life Around the World in JanuaryDaily Life Around the World in January
Daily Life Around the World in January
 
Elasticsearch - Montpellier JUG
Elasticsearch - Montpellier JUGElasticsearch - Montpellier JUG
Elasticsearch - Montpellier JUG
 
Paris RailsCamp 2009
Paris RailsCamp 2009Paris RailsCamp 2009
Paris RailsCamp 2009
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securite
 
Processus Audit SI
Processus Audit SIProcessus Audit SI
Processus Audit SI
 
Rapport De PFE
Rapport De PFERapport De PFE
Rapport De PFE
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic search
 
Point de vue beijaflore politique sécurité
Point de vue beijaflore  politique sécuritéPoint de vue beijaflore  politique sécurité
Point de vue beijaflore politique sécurité
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014
 

Similaire à Le PHP chez Deezer

Développement mobile cross-plateform
Développement mobile cross-plateformDéveloppement mobile cross-plateform
Développement mobile cross-plateformStefan Cosquer
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyonClement Bouillier
 
Meetup du 21 septembre 2017
Meetup du 21 septembre 2017Meetup du 21 septembre 2017
Meetup du 21 septembre 2017AFUP_Limoges
 
Explorez vos données présentes dans MongoDB avec Apache Zeppelin
Explorez vos données présentes dans MongoDB avec Apache ZeppelinExplorez vos données présentes dans MongoDB avec Apache Zeppelin
Explorez vos données présentes dans MongoDB avec Apache ZeppelinBruno Bonnin
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...sebastienmoreno
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent Biret
 
Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Alexandre Morgaut
 
Développer et déployer une application php maintenable
Développer et déployer une application php maintenableDévelopper et déployer une application php maintenable
Développer et déployer une application php maintenableLeTesteur
 
Actionscript: du web au mobile
Actionscript: du web au mobileActionscript: du web au mobile
Actionscript: du web au mobileMartin Arvisais
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Décideurs IT
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Technet France
 
Workflow et bcs sous share point 2013
Workflow et bcs sous share point 2013Workflow et bcs sous share point 2013
Workflow et bcs sous share point 2013Nabil Babaci
 
Workflow et bcs sous SharePoint 2013
Workflow et bcs sous SharePoint 2013Workflow et bcs sous SharePoint 2013
Workflow et bcs sous SharePoint 2013Nabil Babaci
 
Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8Arnaud Auroux
 
DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)Cyrille Martraire
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessEudes Olivier ROBERT
 
Orchestrez vos projets Symfony sans fausses notes
Orchestrez vos projets Symfony sans fausses notesOrchestrez vos projets Symfony sans fausses notes
Orchestrez vos projets Symfony sans fausses notesXavier Gorse
 
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...Publicis Sapient Engineering
 

Similaire à Le PHP chez Deezer (20)

Développement mobile cross-plateform
Développement mobile cross-plateformDéveloppement mobile cross-plateform
Développement mobile cross-plateform
 
Flex4.5 air3.0
Flex4.5 air3.0Flex4.5 air3.0
Flex4.5 air3.0
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
 
Meetup du 21 septembre 2017
Meetup du 21 septembre 2017Meetup du 21 septembre 2017
Meetup du 21 septembre 2017
 
Explorez vos données présentes dans MongoDB avec Apache Zeppelin
Explorez vos données présentes dans MongoDB avec Apache ZeppelinExplorez vos données présentes dans MongoDB avec Apache Zeppelin
Explorez vos données présentes dans MongoDB avec Apache Zeppelin
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 
Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012
 
Développer et déployer une application php maintenable
Développer et déployer une application php maintenableDévelopper et déployer une application php maintenable
Développer et déployer une application php maintenable
 
Actionscript: du web au mobile
Actionscript: du web au mobileActionscript: du web au mobile
Actionscript: du web au mobile
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
Workflow et bcs sous share point 2013
Workflow et bcs sous share point 2013Workflow et bcs sous share point 2013
Workflow et bcs sous share point 2013
 
Workflow et bcs sous SharePoint 2013
Workflow et bcs sous SharePoint 2013Workflow et bcs sous SharePoint 2013
Workflow et bcs sous SharePoint 2013
 
Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8
 
Installation open erp
Installation open erpInstallation open erp
Installation open erp
 
DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for Business
 
Orchestrez vos projets Symfony sans fausses notes
Orchestrez vos projets Symfony sans fausses notesOrchestrez vos projets Symfony sans fausses notes
Orchestrez vos projets Symfony sans fausses notes
 
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...
XebiCon'17 : FLUO, les choix déterminants pour une startup innovante et produ...
 

Le PHP chez Deezer