Ably — qu'est-ce que c'est, une plateforme Pub/Sub temps réel et comment elle fonctionne

Auteur : IT Sectr Publié le : 2026-06-01 Temps de lecture : 8 min

Ably est une plateforme de messagerie en temps réel dans le cloud qui fournit une infrastructure pour la communication pub/sub, la présence et la synchronisation d'état. Elle est conçue pour les projets d'entreprise avec des exigences élevées de fiabilité et de disponibilité mondiale. Selon la documentation officielle d'Ably (2025), la plateforme garantit 99,999% de disponibilité et une latence de livraison inférieure à 65 ms au 95e percentile.

Points clés

  • Ably — plateforme d'entreprise pour la communication en temps réel avec un réseau mondial de centres de données.
  • Modèle Pub/Sub — publication et abonnement à des canaux via WebSocket, Server-Sent Events et HTTP streaming.
  • Garanties de livraison — prise en charge des modes at-least-once, exactly-once et last-value cache pour les données critiques.
  • Présence et synchronisation — suivi des participants en ligne du canal et synchronisation automatique de l'état.
  • SDK pour 20+ plateformes — clients prêts à l'emploi pour JavaScript, Swift, Kotlin, Flutter, React Native et langages serveur.

Qu'est-ce qu'Ably ?

Ably est une plateforme cloud en temps réel fondée en 2014 qui fournit une infrastructure pour la messagerie en temps réel. Contrairement aux services pub simples, Ably offre des garanties de livraison de niveau entreprise, un réseau mondial de points de présence (POP) et une synchronisation d'état intégrée pour des millions de clients simultanés.

La plateforme est utilisée dans des projets où la fiabilité de livraison est critique : tickers financiers, trackers logistiques, systèmes de surveillance médicale et jeux multijoueurs. Ably repose sur sa propre technologie de courtier de messages distribuée, qui réplique les données sur un réseau mondial de plus de 15 centres de données.

Selon le site officiel d'Ably (2025), la plateforme traite plus de 200 milliards de messages par mois pour plus de 50 000 applications actives. Parmi les clients figurent des entreprises du Fortune 500 : Toyota (télématique automobile), HubSpot (synchronisation CRM), Designity (édition collaborative).

Architecture d'Ably

L'architecture d'Ably est construite sur un réseau distribué de courtiers de messages (routeurs) connectés par des canaux à haute vitesse. Chaque courtier dessert un sous-ensemble de canaux et réplique l'état via le Protocole Ably — un protocole binaire sur WebSocket optimisé pour une surcharge minimale. Les clients se connectent au courtier le plus proche via l'équilibrage de charge DNS.

Un différenciateur clé d'Ably par rapport aux concurrents est le journal global intégré, qui stocke l'historique des messages de chaque canal. Cela permet aux nouveaux abonnés de recevoir non seulement les nouveaux messages, mais aussi les précédents (replay), ce qui est essentiel pour l'audit et la récupération d'état après reconnexion.

Comment fonctionne Ably

Le modèle d'interaction d'Ably suit le modèle Publieur-Souscripteur avec des capacités supplémentaires. Le publieur envoie un message à un canal via l'API REST Ably ou le SDK. Le message entre dans le journal distribué global du canal et est distribué à tous les abonnés via leurs connexions actives.

Couche de transport — Ably prend en charge plusieurs protocoles : WebSocket (principal, avec le protocole Ably binaire), Server-Sent Events (pour la réception unidirectionnelle), HTTP streaming (pour les environnements restreints) et MQTT (pour les appareils IoT). Le client sélectionne automatiquement le transport disponible avec la latence la plus faible.

Chaque message passe par une validation du côté d'Ably — vérification de la signature de la clé API, vérification du quota du canal, droits d'accès. La validation se produit en 1 à 5 ms sur le routeur de périphérie, après quoi le message est répliqué dans le journal global. Selon le blog technique d'Ably (2024), la latence de bout en bout est inférieure à 65 ms pour 95% des messages lors d'une transmission intercontinentale.

Canaux et abonnements

Les canaux Ably sont des sujets nommés pour l'échange de messages. Chaque canal peut avoir un nombre illimité d'abonnés, mais pour des performances stables, il est recommandé de ne pas dépasser 10 000 par canal dans une zone. Les canaux peuvent être unidirectionnels (publication depuis le serveur uniquement) ou full-duplex (les clients publient des messages).

Canaux et modèle Pub/Sub d'Ably

Le modèle Pub/Sub dans Ably étend le modèle classique avec des capacités supplémentaires : présence des abonnés, historique des messages, état du canal et espaces de noms. Chaque canal appartient à un espace de noms qui définit les quotas et les droits d'accès.

Présence — suivi automatique des participants du canal. Chaque client abonné à un canal s'enregistre dans la carte de présence avec clientId, statut (en ligne, absent, hors ligne) et des données arbitraires. Lorsqu'un client se déconnecte (par timeout ou explicitement), la présence est automatiquement mise à jour.

Historique des messages — chaque canal stocke l'historique des messages par défaut (jusqu'à 2 minutes ou 100 messages sur le plan gratuit). Sur les plans payants, l'historique peut être étendu jusqu'à 72 heures avec un accès rétrospectif arbitraire. L'historique est stocké dans un journal distribué avec des garanties d'immuabilité (append-only).

FonctionPlan gratuitPlan Enterprise
Connexions simultanées10010 000+
Conservation de l'historique2 minutes / 100 messages72 heures
Garantie de livraisonAt-least-onceExactly-once
Régions1 régionToutes les 15+ régions
SLA99,9%99,999%

Garanties de livraison d'Ably

Les garanties de livraison sont un différenciateur clé d'Ably par rapport à la plupart des services en temps réel. La plateforme prend en charge plusieurs modes de livraison, sélectionnables lors de la publication d'un message. Le mode détermine combien de fois un message sera livré et comment les échecs de connexion sont traités.

At-least-once — le message est livré au moins une fois, les doublons sont possibles. Ce mode est utilisé pour les notifications et les données non critiques où les doublons ne causent pas de dommages. Exactly-once — le message est livré exactement une fois grâce à la déduplication côté client et serveur. Ce mode est obligatoire pour les transactions financières et la gestion des appareils.

Last-value cache — un mode spécial où le canal stocke la dernière valeur de chaque message nommé. Un nouvel abonné reçoit instantanément l'état actuel sans attendre l'événement suivant. Ceci est implémenté via un magasin global clé-valeur sur chaque routeur. Selon la documentation d'Ably (2025), le last-value cache réduit le temps de récupération d'état après reconnexion de 2 à 5 secondes à 50 à 100 ms.

Comment utiliser Ably dans un projet

Commencer avec Ably nécessite une inscription, la création d'une application et l'obtention d'une clé API. Les bibliothèques sont disponibles pour toutes les principales plateformes. Regardons un exemple de publication et d'abonnement utilisant le SDK JavaScript. Le client se connecte avec une clé API, s'abonne à un canal et attache un gestionnaire d'événements.

Selon la documentation d'Ably (2025), il est recommandé d'utiliser des clés API différentes pour la partie serveur et client avec des permissions minimales (principe du moindre privilège). La clé serveur peut publier sur n'importe quel canal, tandis que la clé client ne peut s'abonner qu'à des espaces de noms spécifiques.

S'abonner à un canal Ably

js
import * as Ably from 'ably';

const client = new Ably.Realtime({
    key: 'YOUR_API_KEY',
    clientId: 'user-123'
});

const channel = client.channels.get('test-channel');

channel.subscribe('update', (message) => {
    console.log('Received:', message.data);
});

channel.publish('update', {
    text: 'Hello from Ably',
    priority: 1
});

Publication depuis le serveur

js
const Ably = require('ably');

const rest = new Ably.Rest({ key: 'SERVER_API_KEY' });

const channel = rest.channels.get('test-channel');

channel.publish('server-event', {
    type: 'notification',
    payload: { userId: 100, text: 'Server message' }
}).then(() => {
    console.log('Message published via REST');
});

Ably vs Pusher : comparaison

Le choix entre Ably et Pusher dépend des exigences du projet. Les deux plateformes fournissent une infrastructure temps réel hébergée, mais diffèrent par l'architecture, les garanties et la tarification. Ably est axée sur les entreprises avec des exigences élevées de fiabilité, tandis que Pusher est orientée vers un démarrage rapide et la simplicité.

Ably utilise un journal distribué global pour chaque canal, garantissant une livraison exactly-once et un accès rétrospectif à l'historique. Pusher utilise une architecture de courtier avec des garanties at-least-once. Pour la plupart des applications, la différence est imperceptible, mais pour les systèmes financiers et médicaux, l'exactly-once est critique.

Selon un test comparatif Ably vs Pusher (2024), Ably démontre une latence 20 à 30% inférieure pour la transmission intercontinentale grâce à un plus grand nombre de centres de données. Pusher gagne en vitesse d'intégration — la configuration de base prend 10 à 15 minutes contre 20 à 30 minutes pour Ably en raison du plus grand nombre d'options de configuration.

Intégration mobile d'Ably

Le SDK Ably pour plateformes mobiles prend en charge iOS (Swift), Android (Kotlin/Java), Flutter et React Native. Les clients mobiles sont entièrement compatibles avec le côté serveur d'Ably et prennent en charge toutes les fonctionnalités : pub/sub, présence, historique, notifications push. Pour Android, l'intégration avec Firebase Cloud Messaging est disponible pour la livraison de notifications push hors ligne.

Optimisation pour les réseaux mobiles — le SDK Ably utilise un battement de cœur adaptatif : sur Wi-Fi, l'intervalle est de 15 secondes, sur les réseaux mobiles — jusqu'à 60 secondes pour économiser le trafic. En cas de perte de connexion, le SDK bascule vers un transport de secours (HTTP streaming) sans délai visible pour l'utilisateur. La consommation moyenne de trafic est de 0,5 à 1 Ko par minute en mode veille.

Notifications push — Ably prend en charge l'envoi de push via APNs (Apple) et FCM (Firebase). Le push peut être dirigé vers un canal spécifique ou un clientId. Si le client est actif (WebSocket connecté), le message est livré via le canal. Si le client est déconnecté, le message est livré comme notification push. Cela garantit que l'utilisateur ne manque jamais un message important.

Foire aux questions

En quoi Ably diffère-t-elle de Pusher ?

Ably offre une livraison exactly-once, un journal distribué global et un SLA de 99,999%. Pusher est plus simple à configurer mais ne fournit que des garanties at-least-once. Ably est souvent choisie par les projets d'entreprise avec des exigences élevées de fiabilité.

Combien coûte Ably ?

Le plan gratuit comprend 100 connexions simultanées et 500 000 messages par mois. Les plans payants commencent à 19 $/mois (1000 connexions). Le tarif Entreprise avec des garanties personnalisées est discuté individuellement.

Ably prend-elle en charge la livraison exactly-once ?

Oui, exactly-once est l'une des fonctionnalités clés d'Ably. La déduplication est effectuée du côté de la plateforme en utilisant des identifiants de message uniques (message ID + connection ID).

Combien de centres de données possède Ably ?

Actuellement, Ably dispose de 15+ points de présence dans le monde entier, y compris aux États-Unis, en Europe, en Asie, en Australie et en Amérique du Sud. Les clients Entreprise peuvent sélectionner des régions spécifiques pour le stockage des données.

Peut-on utiliser Ably pour l'IoT ?

Oui, Ably prend en charge le protocole MQTT pour les appareils IoT à faible consommation d'énergie. Des SDK légers avec une utilisation minimale de la mémoire sont disponibles pour les appareils équipés d'ESP32, d'Arduino et de Raspberry Pi.

Résumé

  • Ably — plateforme de messagerie en temps réel d'entreprise avec un réseau mondial de plus de 15 centres de données et un SLA de 99,999%.
  • Modèle Pub/Sub complété par la présence, l'historique des messages et le last-value cache pour une récupération instantanée de l'état.
  • Livraison exactly-once distingue Ably des concurrents et est essentielle pour les applications financières et médicales.
  • SDK mobiles prennent en charge les notifications push via APNs et FCM, le battement de cœur adaptatif et le basculement automatique du transport.
  • Architecture basée sur un journal distribué global et le protocole Ably binaire sur WebSocket.
  • Fonctionnalités Entreprise incluent des SLA personnalisés, l'isolation VPC et des restrictions régionales de stockage des données.
  • Pour les projets avec des exigences de livraison exactly-once et une portée mondiale, choisissez Ably ; pour les scénarios simples, Pusher suffit.

Nous développerons une application mobile clé en main

IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.

Discuter du projet

Lisez aussi