SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
Formats d’échange
SOLUTION
DE TRANSFERT MOBILE
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Vers un monde sans chargement...
☉ Aller toujours plus vite est devenu un besoin capital pour
nos applications. Un temps de chargement trop long est
une des causes de dépréciation et de désinstallation
d’une application.
☉ Deux paramètres peuvent être modulés pour accélérer l’
échange de données et adapter le réseau aux usages
d’aujourd’hui : le protocole de communication utilisé et le
format d’échange des données.
☉ Le couple HTTP1.1 – JSON est aujourd’hui
majoritairement utilisé dans les communications entre
un mobile et un serveur. Mais ce choix est-il performant
ou simplement une habitude ? Est-il adapté au mobile
ou seulement une transposition des acquis du web ?
☉ Cette présentation a pour but d’aider à la réflexion sur le
format d’échange à utiliser dans un projet Mobile. Les
résultats sont tirés d’expériences concrètes et poussent
à remettre en question le standard JSON
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Comment aller toujours plus vite côté mobile?
Jouer sur deux paramètres
Formats d’échange Protocoles de communication
Temps de traitement des données Stabilité
Poids des données Adapté au mobile
>01 JSON
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
☉ JavaScript Object Notation :
> Format de données textuelles dérivé de la notation JavaScript
> Format souvent renvoyé par les WebServices
☉ Référence : RFC7159
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
> Lisible : textuel
> Flexible :
pas de schéma à suivre
> Répandu :
très utilisé pour le web
> Données lourdes : texte
> Pas d’identification précise
de la structure
> Peut devenir ingérable avec un
nombre grandissant de champs
AVANTAGES INCONVENIENTS
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
[
“Octo”: {
“name”: “Dupont”,
“age”: 36,
“Tribu”: {
“label”: “Team”,
“manager”: “Herbert”
},
“Skills”: [“Android”, “TDD”]
}
]
> Exemple
>02 MessagePack
OCTO TECHNOLOGY > THERE IS A BETTER WAY
MessagePack
Format binaire sans schéma…
☉ MessagePack :
> Format d’échange binaire sans schéma
> A pour but d’être le plus simple et le plus
compact possible
☉ Licence : Apache
OCTO TECHNOLOGY > THERE IS A BETTER WAY
> Binaire : léger
> Flexible : pas de schéma
à suivre
> Disponible dans 50 langages
> Encode/Décode longue sous
Android
> Communauté fragmentée
et peu active
> Mauvaise compression avec
des chaînes de caractères
MessagePack
Format binaire sans schéma…
AVANTAGES INCONVENIENTS
OCTO TECHNOLOGY > THERE IS A BETTER WAY
MessagePack
Format binaire sans schéma…
[
“Octo”: {
“name”: “Dupont”,
“age”: 36,
“skills”: [“Android”,
“TDD”]
}
]
JSON MessagePack
81 a4 4f 63 74 6f 83 a4 6e 61 6d 65 a6
44 75 70 6f 6e 74 a3 61 67 65 24 a6 73
6b 69 6c 6c 73 92 a7 41 6e 64 72 6f 69
64 a3 54 44 44
62 bytes 44 bytes
> Exemple
>03 Protocol Buffers
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Protocol Buffers
Format binaire #madebygoogle…
☉ Protocol Buffers :
> Format d’échange binaire avec langage de description d’interface
> Indépendant du langage et de la plateforme
☉ Licence : BSD
☉ Dernière version: 3.1.0 (Norme Proto3)
OCTO TECHNOLOGY > THERE IS A BETTER WAY
AVANTAGES INCONVENIENTS
> Binaire : léger
> Structure définie
> Multiplateforme
> Maintenu
> Encode/Décode rapide sous
Android
> Binaire : illisible
> Nécessite le schéma pour
encoder/décoder
> Peu d’outils disponible pour
la dernière version
Protocol Buffers
Format binaire #madebygoogle…
OCTO TECHNOLOGY > THERE IS A BETTER WAY
syntax = "proto3";
message Octo {
string name = 1;
int32 age = 2;
Tribu tribu = 3 repeated
Skill skills = 4;
}
message Tribu {
string label = 1;
Octo manager = 2;
}
message Skill {
String label = 1;
}
Protocol Buffers
> Exemple : Fichier de structure
Format binaire #madebygoogle…
>04 Benchmarks
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Environnement des tests
Les données échangées sont exclusivement au format texte.
Ce type est le moins favorable pour les formats d’échange binaires.
Je veux 150 paragraphes en format xx.
150 paragraphes dans le format xx.
HTTP/2
Traitement
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Résultats des test
Temps de transfert de X paragraphes
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Résultats des test
JSON Protocol Buffers MessagePack
Vitesse de traitement des
données
1
(Données de référence)
0,5 1,5
Poids des données après
sérialisation
1
(Données de référence)
0,93 0,98
Encodeurs/Décodeurs testés Jackson, Jackson Jr, Moshi Protobuf Officiel, Wire Jackson
Meilleurs Encodeurs/
Décodeurs en temps de
traitement et facilité
d’utilisation
Jackson Wire Jackson
Mise en place dans un projet
Android
Nécessite l’analyse de la
structure de donnée pour
créer les objets Java
Partage du schéma entre le
serveur et le client Android:
création automatique des
objets
Nécessite l’analyse de la
structure de donnée pour
créer les objets Java
Exemple d’utilisation
professionnel
Enormement d’API Web
Google (utilisation interne),
PokemonGo
Pinterest, Fluent, Treasure
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Protocol Buffers: Gagnant?
☉ Les résultats de Protocol Buffers sont très bons
> Temps de traitement 2 fois inférieur à JSON
> Consommation mémoire identique à JSON
> Poids des données faible : transfert plus rapide
☉ Mais la solution est-elle envisageable?

Contenu connexe

Tendances

Blockchain et autres registres distribués
Blockchain et autres registres distribuésBlockchain et autres registres distribués
Blockchain et autres registres distribuésInsitut Louis Bachelier
 
Mémento - Intro à la Blockchain
Mémento - Intro à la BlockchainMémento - Intro à la Blockchain
Mémento - Intro à la BlockchainSalesforce France
 
blockchain et contrats open source
blockchain et contrats open sourceblockchain et contrats open source
blockchain et contrats open sourceFrederic Baud
 
Guillaume Buffet - La blockchain - Signaux Numériques 2016
Guillaume Buffet - La blockchain - Signaux Numériques 2016Guillaume Buffet - La blockchain - Signaux Numériques 2016
Guillaume Buffet - La blockchain - Signaux Numériques 2016UNITEC
 
Decoding the blockchain, workshop France Digitale CNP Assurances
Decoding the blockchain, workshop France Digitale CNP AssurancesDecoding the blockchain, workshop France Digitale CNP Assurances
Decoding the blockchain, workshop France Digitale CNP AssurancesFrance Digitale
 
Blockchain, mythes et réalités
Blockchain, mythes et réalitésBlockchain, mythes et réalités
Blockchain, mythes et réalitésBackstory
 
Blockchain et Smart Contract : de la théorie à la production
Blockchain et Smart Contract : de la théorie à la productionBlockchain et Smart Contract : de la théorie à la production
Blockchain et Smart Contract : de la théorie à la productionMathieu Durand
 
Business & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision
 
La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?Antoine Vigneron
 
Conférence 2017 Blockchain : de la Finance à l'Energie
Conférence 2017 Blockchain : de la Finance à l'EnergieConférence 2017 Blockchain : de la Finance à l'Energie
Conférence 2017 Blockchain : de la Finance à l'EnergieDavid MONSERAND
 
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...Sébastien Bourguignon
 
Petit-déjeuner OCTO - L'Infra au service de ses projets
Petit-déjeuner OCTO - L'Infra au service de ses projetsPetit-déjeuner OCTO - L'Infra au service de ses projets
Petit-déjeuner OCTO - L'Infra au service de ses projetsOCTO Technology
 
MobiliteaTime #7 : Blockchain
MobiliteaTime #7 : BlockchainMobiliteaTime #7 : Blockchain
MobiliteaTime #7 : BlockchainUSERADGENTS
 
Prestations Consulting Blockchain Philemonday Agency_2016
Prestations Consulting Blockchain Philemonday Agency_2016Prestations Consulting Blockchain Philemonday Agency_2016
Prestations Consulting Blockchain Philemonday Agency_2016Philemonday
 
Apports et freins de la Blockchain sur le secteur bancaire
Apports et freins de la Blockchain sur le secteur bancaireApports et freins de la Blockchain sur le secteur bancaire
Apports et freins de la Blockchain sur le secteur bancaireDan Ittah
 
Démystifier la Blockchain
Démystifier la BlockchainDémystifier la Blockchain
Démystifier la BlockchainClément Hallet
 

Tendances (20)

Blockchain et autres registres distribués
Blockchain et autres registres distribuésBlockchain et autres registres distribués
Blockchain et autres registres distribués
 
Mémento - Intro à la Blockchain
Mémento - Intro à la BlockchainMémento - Intro à la Blockchain
Mémento - Intro à la Blockchain
 
blockchain et contrats open source
blockchain et contrats open sourceblockchain et contrats open source
blockchain et contrats open source
 
Livre blanc biz hackathon-2017
Livre blanc biz hackathon-2017Livre blanc biz hackathon-2017
Livre blanc biz hackathon-2017
 
Guillaume Buffet - La blockchain - Signaux Numériques 2016
Guillaume Buffet - La blockchain - Signaux Numériques 2016Guillaume Buffet - La blockchain - Signaux Numériques 2016
Guillaume Buffet - La blockchain - Signaux Numériques 2016
 
Kevin Bélanger
Kevin BélangerKevin Bélanger
Kevin Bélanger
 
Decoding the blockchain, workshop France Digitale CNP Assurances
Decoding the blockchain, workshop France Digitale CNP AssurancesDecoding the blockchain, workshop France Digitale CNP Assurances
Decoding the blockchain, workshop France Digitale CNP Assurances
 
Blockchain, mythes et réalités
Blockchain, mythes et réalitésBlockchain, mythes et réalités
Blockchain, mythes et réalités
 
Blockchain et Smart Contract : de la théorie à la production
Blockchain et Smart Contract : de la théorie à la productionBlockchain et Smart Contract : de la théorie à la production
Blockchain et Smart Contract : de la théorie à la production
 
Business & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'art
 
La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?
 
Conférence 2017 Blockchain : de la Finance à l'Energie
Conférence 2017 Blockchain : de la Finance à l'EnergieConférence 2017 Blockchain : de la Finance à l'Energie
Conférence 2017 Blockchain : de la Finance à l'Energie
 
La Blockchain : Au-delà du Bitcoin
La Blockchain : Au-delà du BitcoinLa Blockchain : Au-delà du Bitcoin
La Blockchain : Au-delà du Bitcoin
 
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...
La blockchain dans la banque et l'assurance, quelles perspectives ? - web2bus...
 
Petit-déjeuner OCTO - L'Infra au service de ses projets
Petit-déjeuner OCTO - L'Infra au service de ses projetsPetit-déjeuner OCTO - L'Infra au service de ses projets
Petit-déjeuner OCTO - L'Infra au service de ses projets
 
MobiliteaTime #7 : Blockchain
MobiliteaTime #7 : BlockchainMobiliteaTime #7 : Blockchain
MobiliteaTime #7 : Blockchain
 
Prestations Consulting Blockchain Philemonday Agency_2016
Prestations Consulting Blockchain Philemonday Agency_2016Prestations Consulting Blockchain Philemonday Agency_2016
Prestations Consulting Blockchain Philemonday Agency_2016
 
Formation BLOCKCHAIN
Formation BLOCKCHAINFormation BLOCKCHAIN
Formation BLOCKCHAIN
 
Apports et freins de la Blockchain sur le secteur bancaire
Apports et freins de la Blockchain sur le secteur bancaireApports et freins de la Blockchain sur le secteur bancaire
Apports et freins de la Blockchain sur le secteur bancaire
 
Démystifier la Blockchain
Démystifier la BlockchainDémystifier la Blockchain
Démystifier la Blockchain
 

Similaire à Solution de transfert mobile - Formats d'échange

manager vs leader.pptx
manager vs leader.pptxmanager vs leader.pptx
manager vs leader.pptxnadinelaabidi
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des fluxbuffy14
 
La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? OCTO Technology
 
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...Reseaux THD: Exigences et defis technologiques pour des services de bout en ...
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...Afnic
 
Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Microsoft Technet France
 
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalPSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalBelkacem KAID
 
1- XML généralités technologies xml1.pdf
1- XML généralités technologies xml1.pdf1- XML généralités technologies xml1.pdf
1- XML généralités technologies xml1.pdfKokitaKaty
 
Alfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendAlfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendMarc Dutoo
 
Comprendre blockchain eos
Comprendre blockchain eosComprendre blockchain eos
Comprendre blockchain eosPascal Ngu Cho
 
De la multiplicité des sources d’informations à la consolidation : avantages ...
De la multiplicité des sources d’informations à la consolidation : avantages ...De la multiplicité des sources d’informations à la consolidation : avantages ...
De la multiplicité des sources d’informations à la consolidation : avantages ...Nuxeo
 
Benchmarking NoSQL DataBase dans le cadre d'un projet IoT
Benchmarking NoSQL DataBase dans le cadre d'un projet IoTBenchmarking NoSQL DataBase dans le cadre d'un projet IoT
Benchmarking NoSQL DataBase dans le cadre d'un projet IoTCHAKER ALLAOUI
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfAlKir1
 
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?Logiciels libres dans le domaine des télécoms: Similaires ou différents ?
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?gelendir
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVABachir Benyammi
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlinangeeLee
 
Consul @Criteo - usages et patches
Consul @Criteo - usages et patchesConsul @Criteo - usages et patches
Consul @Criteo - usages et patchesPierre Souchay
 

Similaire à Solution de transfert mobile - Formats d'échange (20)

manager vs leader.pptx
manager vs leader.pptxmanager vs leader.pptx
manager vs leader.pptx
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des flux
 
La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ?
 
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...Reseaux THD: Exigences et defis technologiques pour des services de bout en ...
Reseaux THD: Exigences et defis technologiques pour des services de bout en ...
 
Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance
 
Presentation forum php 2010
Presentation forum php 2010Presentation forum php 2010
Presentation forum php 2010
 
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalPSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
 
Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques
 
1- XML généralités technologies xml1.pdf
1- XML généralités technologies xml1.pdf1- XML généralités technologies xml1.pdf
1- XML généralités technologies xml1.pdf
 
Alfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendAlfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & Talend
 
Comprendre blockchain eos
Comprendre blockchain eosComprendre blockchain eos
Comprendre blockchain eos
 
De la multiplicité des sources d’informations à la consolidation : avantages ...
De la multiplicité des sources d’informations à la consolidation : avantages ...De la multiplicité des sources d’informations à la consolidation : avantages ...
De la multiplicité des sources d’informations à la consolidation : avantages ...
 
Solution standard de compensation appliquée à une architecture e business séc...
Solution standard de compensation appliquée à une architecture e business séc...Solution standard de compensation appliquée à une architecture e business séc...
Solution standard de compensation appliquée à une architecture e business séc...
 
Benchmarking NoSQL DataBase dans le cadre d'un projet IoT
Benchmarking NoSQL DataBase dans le cadre d'un projet IoTBenchmarking NoSQL DataBase dans le cadre d'un projet IoT
Benchmarking NoSQL DataBase dans le cadre d'un projet IoT
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdf
 
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?Logiciels libres dans le domaine des télécoms: Similaires ou différents ?
Logiciels libres dans le domaine des télécoms: Similaires ou différents ?
 
Technologie Web.pptx
Technologie Web.pptxTechnologie Web.pptx
Technologie Web.pptx
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
Consul @Criteo - usages et patches
Consul @Criteo - usages et patchesConsul @Criteo - usages et patches
Consul @Criteo - usages et patches
 

Plus de OCTO Technology

Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonnéLe Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonnéOCTO Technology
 
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloudLe Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloudOCTO Technology
 
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...OCTO Technology
 
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...OCTO Technology
 
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...OCTO Technology
 
OCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeursOCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeursOCTO Technology
 
OCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture TestOCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture TestOCTO Technology
 
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...OCTO Technology
 
OCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend webOCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend webOCTO Technology
 
Comptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/LeaseplanComptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/LeaseplanOCTO Technology
 
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ? Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ? OCTO Technology
 
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...OCTO Technology
 
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...OCTO Technology
 
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conceptionLe Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conceptionOCTO Technology
 
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...OCTO Technology
 
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...OCTO Technology
 
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...OCTO Technology
 
RefCard Tests sur tous les fronts
RefCard Tests sur tous les frontsRefCard Tests sur tous les fronts
RefCard Tests sur tous les frontsOCTO Technology
 
RefCard RESTful API Design
RefCard RESTful API DesignRefCard RESTful API Design
RefCard RESTful API DesignOCTO Technology
 

Plus de OCTO Technology (20)

Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonnéLe Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
 
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloudLe Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
 
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
 
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
 
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
 
OCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeursOCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeurs
 
OCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture TestOCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture Test
 
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
 
OCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend webOCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend web
 
Refcard GraphQL
Refcard GraphQLRefcard GraphQL
Refcard GraphQL
 
Comptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/LeaseplanComptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/Leaseplan
 
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ? Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
 
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
 
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...
 
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conceptionLe Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
 
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
 
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...
 
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
 
RefCard Tests sur tous les fronts
RefCard Tests sur tous les frontsRefCard Tests sur tous les fronts
RefCard Tests sur tous les fronts
 
RefCard RESTful API Design
RefCard RESTful API DesignRefCard RESTful API Design
RefCard RESTful API Design
 

Solution de transfert mobile - Formats d'échange

  • 2. OCTO TECHNOLOGY > THERE IS A BETTER WAY Vers un monde sans chargement... ☉ Aller toujours plus vite est devenu un besoin capital pour nos applications. Un temps de chargement trop long est une des causes de dépréciation et de désinstallation d’une application. ☉ Deux paramètres peuvent être modulés pour accélérer l’ échange de données et adapter le réseau aux usages d’aujourd’hui : le protocole de communication utilisé et le format d’échange des données. ☉ Le couple HTTP1.1 – JSON est aujourd’hui majoritairement utilisé dans les communications entre un mobile et un serveur. Mais ce choix est-il performant ou simplement une habitude ? Est-il adapté au mobile ou seulement une transposition des acquis du web ? ☉ Cette présentation a pour but d’aider à la réflexion sur le format d’échange à utiliser dans un projet Mobile. Les résultats sont tirés d’expériences concrètes et poussent à remettre en question le standard JSON
  • 3. OCTO TECHNOLOGY > THERE IS A BETTER WAY Comment aller toujours plus vite côté mobile? Jouer sur deux paramètres Formats d’échange Protocoles de communication Temps de traitement des données Stabilité Poids des données Adapté au mobile
  • 5. OCTO TECHNOLOGY > THERE IS A BETTER WAY JSON Le format d’échange devenu standard… ☉ JavaScript Object Notation : > Format de données textuelles dérivé de la notation JavaScript > Format souvent renvoyé par les WebServices ☉ Référence : RFC7159
  • 6. OCTO TECHNOLOGY > THERE IS A BETTER WAY JSON Le format d’échange devenu standard… > Lisible : textuel > Flexible : pas de schéma à suivre > Répandu : très utilisé pour le web > Données lourdes : texte > Pas d’identification précise de la structure > Peut devenir ingérable avec un nombre grandissant de champs AVANTAGES INCONVENIENTS
  • 7. OCTO TECHNOLOGY > THERE IS A BETTER WAY JSON Le format d’échange devenu standard… [ “Octo”: { “name”: “Dupont”, “age”: 36, “Tribu”: { “label”: “Team”, “manager”: “Herbert” }, “Skills”: [“Android”, “TDD”] } ] > Exemple
  • 9. OCTO TECHNOLOGY > THERE IS A BETTER WAY MessagePack Format binaire sans schéma… ☉ MessagePack : > Format d’échange binaire sans schéma > A pour but d’être le plus simple et le plus compact possible ☉ Licence : Apache
  • 10. OCTO TECHNOLOGY > THERE IS A BETTER WAY > Binaire : léger > Flexible : pas de schéma à suivre > Disponible dans 50 langages > Encode/Décode longue sous Android > Communauté fragmentée et peu active > Mauvaise compression avec des chaînes de caractères MessagePack Format binaire sans schéma… AVANTAGES INCONVENIENTS
  • 11. OCTO TECHNOLOGY > THERE IS A BETTER WAY MessagePack Format binaire sans schéma… [ “Octo”: { “name”: “Dupont”, “age”: 36, “skills”: [“Android”, “TDD”] } ] JSON MessagePack 81 a4 4f 63 74 6f 83 a4 6e 61 6d 65 a6 44 75 70 6f 6e 74 a3 61 67 65 24 a6 73 6b 69 6c 6c 73 92 a7 41 6e 64 72 6f 69 64 a3 54 44 44 62 bytes 44 bytes > Exemple
  • 13. OCTO TECHNOLOGY > THERE IS A BETTER WAY Protocol Buffers Format binaire #madebygoogle… ☉ Protocol Buffers : > Format d’échange binaire avec langage de description d’interface > Indépendant du langage et de la plateforme ☉ Licence : BSD ☉ Dernière version: 3.1.0 (Norme Proto3)
  • 14. OCTO TECHNOLOGY > THERE IS A BETTER WAY AVANTAGES INCONVENIENTS > Binaire : léger > Structure définie > Multiplateforme > Maintenu > Encode/Décode rapide sous Android > Binaire : illisible > Nécessite le schéma pour encoder/décoder > Peu d’outils disponible pour la dernière version Protocol Buffers Format binaire #madebygoogle…
  • 15. OCTO TECHNOLOGY > THERE IS A BETTER WAY syntax = "proto3"; message Octo { string name = 1; int32 age = 2; Tribu tribu = 3 repeated Skill skills = 4; } message Tribu { string label = 1; Octo manager = 2; } message Skill { String label = 1; } Protocol Buffers > Exemple : Fichier de structure Format binaire #madebygoogle…
  • 17. OCTO TECHNOLOGY > THERE IS A BETTER WAY Environnement des tests Les données échangées sont exclusivement au format texte. Ce type est le moins favorable pour les formats d’échange binaires. Je veux 150 paragraphes en format xx. 150 paragraphes dans le format xx. HTTP/2 Traitement
  • 18. OCTO TECHNOLOGY > THERE IS A BETTER WAY Résultats des test Temps de transfert de X paragraphes
  • 19. OCTO TECHNOLOGY > THERE IS A BETTER WAY Résultats des test JSON Protocol Buffers MessagePack Vitesse de traitement des données 1 (Données de référence) 0,5 1,5 Poids des données après sérialisation 1 (Données de référence) 0,93 0,98 Encodeurs/Décodeurs testés Jackson, Jackson Jr, Moshi Protobuf Officiel, Wire Jackson Meilleurs Encodeurs/ Décodeurs en temps de traitement et facilité d’utilisation Jackson Wire Jackson Mise en place dans un projet Android Nécessite l’analyse de la structure de donnée pour créer les objets Java Partage du schéma entre le serveur et le client Android: création automatique des objets Nécessite l’analyse de la structure de donnée pour créer les objets Java Exemple d’utilisation professionnel Enormement d’API Web Google (utilisation interne), PokemonGo Pinterest, Fluent, Treasure
  • 20. OCTO TECHNOLOGY > THERE IS A BETTER WAY Protocol Buffers: Gagnant? ☉ Les résultats de Protocol Buffers sont très bons > Temps de traitement 2 fois inférieur à JSON > Consommation mémoire identique à JSON > Poids des données faible : transfert plus rapide ☉ Mais la solution est-elle envisageable?