Upload
xebia-france
View
814
Download
1
Embed Size (px)
Citation preview
Microservices et architecture réactive pour une nouvelle plateforme de services autour du paiement en
magasin
#XebiConFr
Speakers
Jean-François CaenenVP, Terminal Solutions R&D
Nicolas JozwiakDirecteur de projet &
Programmeur
#XebiConFr
● Ingenico● Le projet Merchant Service Hub● Des choix innovants au service des enjeux du projet● L’architecture● L’application● Retours d’expérience
Agenda
#XebiConFr
Ingenico / leader mondial des solutions de paiements intégrées
CA 20141 607 M€ (+17%)70% HW
30% Services
5,800 employés dans 40+
pays
Créée en 1980 :
35 ans d’expertise
#1mondial des solutions d’acceptation de paiement
#1 en Chineavec 40%
part de marché en acceptation
#XebiConFr
Couvrir tous les canaux de vente - Positionnement multi-local
27M terminaux
9M livrés en 2014
300+méthodes
de paiement
25 centres
R&D dans le monde
#XebiConFr
The Merchant Service Hub / Développer les activités de services autour du paiement
La capture des transactions devient une commodité● Réduction du coût par transaction● Architecture à l’état de l’art et au meilleur rapport
coût - performance● Capacité à s’adapter aux marchés en suivant les
évolutions technologiques (les acteurs web et cloud comme références) Services avancés au-delà de la capture
des transactions● Nouveaux services facturables /
Nouvelles sources de revenues● Augmenter la rétention/fidélité client● Attirer de nouveaux clients
#XebiConFr
The Merchant Service Hub / Gestion de l’offre
● Développement initial par la R&D Groupe dans une logique MVP
● Une solution conçue pour être exploitée, personnalisée et
étendue par les Régions
● Une gouvernance de type Open Source interne : ‘‘InnerSource’’
● Une architecture et des technologies au service des enjeux de l’
offre de services (Build To Run)
● Collaboration forte avec une Région : Apac
#XebiConFr
The Merchant Service Hub / Version 1
● Tirer avantage des applications de paiement fonctionnant sur les terminaux
● Focalisation initiale sur les fonctions de Business Intelligence et sur l’assistance aux
marchands dans le suivi et la conduite de leur activité
● Conçu pour intégrer facilement de nouveaux services avec un coût réduit [marginal]
● Proposé selon un mode de service managé/cloud
Aider nos clients à aider leurs marchands
Petits marchands
#XebiConFr
The Merchant Service Hub / Version 1
• Transaction routing to the acquirer host• Merchant reporting, analytics & alerting• Acquirer reporting, analytics & alerting• Digital Receipt Management• User & Merchant provisioning• VAS enablement
Standalone
● Transaction routing to the acquirer host● Merchant reporting, analytics & alerting● Acquirer reporting, analytics & alerting● Digital Receipt Management● User & Merchant provisioning● VAS enablement
Merchant Service Hub
ECR Integration
Acquirer Host
Merchant Web Portal
Merchant Web Portal
Merchant Web Portal
Merchant Businesssupport
Techsupport
Ingenico
Open APIs
#XebiConFr
The Merchant Service Hub / Version 1
Pour les Marchands•Conduire son activité plus efficacement•Suivre l’activité en magasin(s)•Améliorer la connaissance client (analytics clients nouveaux/récurrents)
Pour l’acquéreur•De nouveaux services qui renforcent la relation de la banque avec ses marchands (différenciation)•Générer de nouveaux revenus grâce aux nouveaux services•Optimiser les processus & l’administration des marchands
En tirant parti des applications de paiement existantes sur les terminaux
Valeurcréée
#XebiConFr
Scalabilité & performances / Flux de transactions
GoReactive!
Scalable par composant
x00 000s
#XebiConFr
Continuité de services & Tolérance aux pannes
Objectif 99,99% de disponibilité
● Design for Failure
● La plateforme se surveille et réagit aux défaillances sans interruption de service
● Choix de technologies incluant redondances et gestion des pannes
● 2 causes d’interruption de service au-delà des défaillances logicielles• Maintenance évolutive : plusieurs versions simultanément. Blue/Green. Évolutions des données.• Erreurs humaines : Tout automatiser. Monitoring & Logging.
#XebiConFr
Architecture réactive
Meilleure exploitation des capacités HW(voir http://www.typesafe.com/blog/why-is-play-framework-so-fast)
#XebiConFr
MicroserviceSéparer les programmes qui doivent évoluer de façon indépendante
● Principe de Responsabilité UniqueChaque microservice fait une chose & le fait bien
● Simple, une interface bien définie● Déployable, scalable et tolérant aux pannes de
façon indépendante● Facile à comprendre et à changer (même par une
équipe lointaine)● Des choix technologiques différents (si nécessaire)● Quelle taille ? Petit, comment ?
“Something that could be rewritten in two weeks”
Jon EAVES
Evoluer simplement avec de nouveaux microservices& avec de nouveaux liens entre microservices
#XebiConFr
L’architectureHTTP post
Mesos Master
Mesos Slave / Marathon
returning customer
transaction indexer
returning customer
Mesos Slave / Marathon
transaction indexer
X services
transaction indexer
#XebiConFr
Retours d’expérience
● Modélisation des données en amont
{ "_index": "returning-customer", "_type": "transaction", "_id": "1", "_version": 5, "_score": 1, "_source": { "uniqueCardId": "2222", "transactionResult": "APPROVED", "selectedService": "PAYMENT", "totalAmount": 13401, "nbPayments": 5, "avgBasket": 2680.2 }}
#XebiConFr
Retours d’expérience
● Zookeeper● API et consommation● Monitoring
Burrowhttps://github.com/linkedin/Burrow
#XebiConFr
Retours d’expérience
● Composants● Structuration● Nouveaux écrans rapides● Facile à tester unitairement
#XebiConFr
Retours d’expérience
● Automatisation provisionning environnements
● Difficile et long● Montée en compétence
#XebiConFr
Conclusion
Architecture microservices validée par les qualités de la solution.
● Travail itératif
● Montée en compétence et diffusion au sein de l’équipe
● Recherche permanente de la solution la plus simple