Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
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 c...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Comment aller toujours plus vite côté mobile?
Jouer sur deux paramètres
Formats d’...
>01 JSON
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
☉ JavaScript Object Notation :
> Format ...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
> Lisible : textuel
> Flexible :
pas de ...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
JSON
Le format d’échange devenu standard…
[
“Octo”: {
“name”: “Dupont”,
“age”: 36,...
>02 MessagePack
OCTO TECHNOLOGY > THERE IS A BETTER WAY
MessagePack
Format binaire sans schéma…
☉ MessagePack :
> Format d’échange binaire...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
> Binaire : léger
> Flexible : pas de schéma
à suivre
> Disponible dans 50 langage...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
MessagePack
Format binaire sans schéma…
[
“Octo”: {
“name”: “Dupont”,
“age”: 36,
“...
>03 Protocol Buffers
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Protocol Buffers
Format binaire #madebygoogle…
☉ Protocol Buffers :
> Format d’éch...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
AVANTAGES INCONVENIENTS
> Binaire : léger
> Structure définie
> Multiplateforme
> ...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
syntax = "proto3";
message Octo {
string name = 1;
int32 age = 2;
Tribu tribu = 3 ...
>04 Benchmarks
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Environnement des tests
Les données échangées sont exclusivement au format texte.
...
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
don...
OCTO TECHNOLOGY > THERE IS A BETTER WAY
Protocol Buffers: Gagnant?
☉ Les résultats de Protocol Buffers sont très bons
> Te...
Upcoming SlideShare
Loading in …5
×

Solution de transfert mobile - Formats d'échange

7,752 views

Published on

Les solutions de transfert mobiles sont nombreuses. Mais en pratique, c’est le format d’échange JSON qui est régulièrement utilisé. Déjà intégré pour le web, connu et lisible, ce format a tout pour plaire. Mais est-il le seul? Est-il réellement adapté au mobile?
Le poids de la données ainsi que sa vitesse d'encodage/décodage sont des facteurs importants pour diminuer le temps de chargement. De plus, une simplicité d'usage d'un format garantit une mise en place plus rapide, plus simple. La manipulation d'un JSON, par exemple, n'est pas si aisée en Android.
La présentation ci-dessous présente les trois formats comparés: JSON, Message Pack et Protocol Buffers.

Published in: Technology
  • PumaToto | Agen Togel Terpercaya PumaToto merupakan Togel Online | Togel Terpercaya dengan Prediksi Togel Akurat | Prediksi Angka Jitu Bagi kalian yang suka bermain Togel Singapore | Togel HK bisa untuk bergabung dengan PumaToto Cara Main Togel | Cara Pasang Togel | Pasang Togel Online di PumaToto, dengan Discount dan Hadiah Menarik Tentunya Daftarkan diri Anda bersama PumaToto https://caramaintogel.com/
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • D0WNL0AD FULL ▶ ▶ ▶ ▶ http://1url.pw/pQPKW ◀ ◀ ◀ ◀
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • D0WNL0AD FULL ▶ ▶ ▶ ▶ http://1url.pw/pQPKW ◀ ◀ ◀ ◀
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Solution de transfert mobile - Formats d'échange

  1. 1. Formats d’échange SOLUTION DE TRANSFERT MOBILE
  2. 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. 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
  4. 4. >01 JSON
  5. 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. 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. 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
  8. 8. >02 MessagePack
  9. 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. 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. 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
  12. 12. >03 Protocol Buffers
  13. 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. 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. 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…
  16. 16. >04 Benchmarks
  17. 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. 18. OCTO TECHNOLOGY > THERE IS A BETTER WAY Résultats des test Temps de transfert de X paragraphes
  19. 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. 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?

×