Protocole de découverte de services

Magazine
Marque
GNU/Linux Magazine
Numéro
190
Mois de parution
février 2016
Spécialité(s)


Résumé
Le but de cet article est de mettre au point un protocole de découverte de services (base de données, serveur apache, etc.) indépendant de la localisation réseau du service. Nous appliquerons ce protocole au cas particulier de MariaDB.


L'objectif

Les services réseaux (bases de données, serveur web…) sont exécutés sur des machines ayant une adresse IP sur un port connu d'avance. Par exemple, MariaDB utilise le port TCP 3306, PosgreSQL le port 5432 ou encore les serveurs Web le port 80. Les architectures techniques des applications distribuées passent donc par une connaissance a priori des différentes localisations réseaux de ces services. Le but de cet article est de montrer comment remplacer cette connaissance a priori par un protocole réseau permettant de trouver dynamiquement les services. Ce protocole s'inspire du protocole générique SSDP implémenté, mais emploie plutôt le format JSON sans utilisation du HTTP.

L'objectif de cet article est donc de remplacer le paradigme où un client se connecte à un serveur sur un couple adresse IP/port TCP bien connu par un paradigme où le client demande au réseau où se trouve le service demandé avant la connexion.

Les outils

Afin de mettre en place ce...

Cet article est réservé aux abonnés. Il vous reste 94% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez chaque semaine un nouvel article premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Base de données embarquée dans un navigateur

Magazine
Marque
GNU/Linux Magazine
Numéro
164
Mois de parution
octobre 2013
Spécialité(s)
Résumé

Cela fait quelques années que je vends du logiciel et… soit je n’ai pas de chance, soit c’est le marché qui veut ça, mais pour une application client lourd (QT,Swing,GTK…) que j’écris, je vends 3 applications Web. Ces applications Web sont des applications style « desktop », mais vivantes, soit dans un navigateur Internet « standard », soit sur le navigateur d’un téléphone/tablette. Là où ça se complique, c’est qu’une application lourde interagit rapidement et « fonctionne » sans Internet… Deux trucs « difficiles » à mettre en place pour les applications Web.Il devient assez complexe de faire comprendre à son client qu’une application Web 2.0 ne peut fonctionner sans Internet alors qu’une vieille application client lourd (Pre-Web 1.0 ?) le peut.

Trafiquer un moteur : c’est simple comme élever un enfant !

Magazine
Marque
GNU/Linux Magazine
Numéro
163
Mois de parution
septembre 2013
Spécialité(s)
Résumé

Le but de cet article est d’intervenir dans le code d’un moteur de base de données (H2 pour ne pas le citer), afin d'ajouter deux fonctionnalités intéressantes : le « Row/Cell Level Security » (sécurité au niveau d’une ligne de table de base de données) et un accès distant aux données. Plus que ces fonctionnalités, cet article nous permettra d’étudier une base de données relationnelle, non pas comme d’habitude d’un point de vue « client » (JDBC, ODBC et consorts), mais de l’intérieur du moteur.

Les derniers articles Premiums

Les derniers articles Premium

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Raspberry Pi Pico : PIO, DMA et mémoire flash

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Le microcontrôleur RP2040 équipant la Pico est une petite merveille et malgré l'absence de connectivité wifi ou Bluetooth, l'étendue des fonctionnalités intégrées reste très impressionnante. Nous avons abordé le sujet du sous-système PIO dans un précédent article [1], mais celui-ci n'était qu'une découverte de la fonctionnalité. Il est temps à présent de pousser plus loin nos expérimentations en mêlant plusieurs ressources à notre disposition : PIO, DMA et accès à la flash QSPI.

Les listes de lecture

8 article(s) - ajoutée le 01/07/2020
Découvrez notre sélection d'articles pour faire vos premiers pas avec les conteneurs, apprendre à les configurer et les utiliser au quotidien.
11 article(s) - ajoutée le 02/07/2020
Si vous recherchez quels sont les outils du DevOps et comment les utiliser, cette liste est faite pour vous.
8 article(s) - ajoutée le 02/07/2020
Il est essentiel d'effectuer des sauvegardes régulières de son travail pour éviter de perdre toutes ses données bêtement. De nombreux outils sont disponibles pour nous assister dans cette tâche.
Voir les 49 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous