Qu'est-ce que AWS SNS ? SNS vs. concurrents

PubNub Developer Relations - Mar 12 - - Dev Community

Avant de plonger dans la comparaison entre PubNub et Amazon Simple Notification Service (SNS) pour la messagerie par publication/abonnement, il est utile de comprendre ce qu'est chaque service et ce qu'il offre. Dans ce blog, nous allons non seulement explorer les différences entre ces deux technologies, mais aussi intégrer d'autres outils puissants d'Amazon Web Services, tels que Kinesis et AWS Simple Queue Service (SQS), dans la comparaison.

Dans le domaine de la livraison de données et de messages, PubNub et Amazon SNS, ainsi que la suite plus large d'Amazon Web Services, sont des noms bien connus qui utilisent un modèle de publication/abonnement ou prennent en charge une fonction similaire à celle de Kinesis. Bien qu'ils partagent cette fonction de base, ces services offrent des caractéristiques différentes et répondent à des besoins commerciaux distincts. Ils ne se remplacent pas l'un l'autre, mais apportent des solutions à des besoins applicatifs variés. À la fin de cet article, vous constaterez que ces technologies, y compris l'utilisation d'un sujet SNS et d'AWS SQS, répondent à des cas d'utilisation et à des applications très différents.

Qu'est-ce que PubNub ?

PubNub est une plateforme de communication en temps réel qui offre des API aux développeurs pour créer des applications web, mobiles et IoT en temps réel. Elle est conçue pour fournir des messages et des mises à jour à faible latence et prend en charge une variété de fonctionnalités, notamment les notifications push, la présence, le chat et la synchronisation des données.

Il est utilisé par plus de 2 000 organisations dans le monde, y compris des entreprises, des startups et des développeurs pour créer des applications en temps réel rapidement et facilement. Qu'il s'agisse de transport, de soins de santé, de médias sociaux ou de commerce électronique, PubNub permet une communication en temps réel dans tous les secteurs d'activité.

Qu'est-ce que AWS SNS ?

AWS Simple Notification Service (SNS) est un service de messagerie offert par Amazon Web Services qui permet aux développeurs d'envoyer des notifications push, des SMS et des e-mails aux utilisateurs finaux et à d'autres applications. Utilisé avec d'autres outils AWS tels que Kinesis et SQS, il offre des options flexibles pour gérer les flux de données et les files d'attente de messages.

À quoi sert SNS ?

AWS SNS a de nombreuses applications, dont certaines sont très populaires :

  • Notifications push mobiles : AWS SNS offre un moyen unifié d'envoyer des notifications push à la messagerie en nuage Firebase d'Android et aux systèmes de messagerie push APNS d'iOS. Il simplifie le processus en le ramenant à un seul point de terminaison. Les notifications push de PubNub offrent une fonctionnalité similaire.

  • Notifications par courriel ou SMS : Cette fonction permet d'envoyer des courriels ou des messages SMS aux abonnés, tels que les clients ou les administrateurs, lorsque des événements se produisent. Par exemple, les détaillants peuvent avertir leurs clients par SMS ou par courriel lorsque leur commande est confirmée.

  • Messagerie entre applications : AWS SNS peut faciliter la communication de messages entre les applications au sein d'un système distribué selon un modèle 1:1 ou 1:many, à l'instar de Kinesis et AWS SQS. Cela s'apparente au système de messagerie Pub/Sub de PubNub.

Latence du SNS

Il est difficile de quantifier la latence d'AWS SNS car elle peut dépendre d'un certain nombre de facteurs tels que la région, la taille du message et le nombre d'abonnés. SNS est annoncé comme un système à faible latence qui transmet les messages aussi rapidement que possible.

Prix et coûts de SNS

Des chiffres actualisés concernant les prix de SNS sont disponibles sur la page des prix de SNS d'AWS. Le prix varie en fonction du type de message envoyé et un niveau gratuit est disponible.

Publication sur les appareils des utilisateurs finaux : PubNub vs Amazon SNS

PubNub est explicitement conçu pour fournir des données avec une faible latence (moins de 0,25 seconde SLA) aux appareils des utilisateurs finaux, y compris les smartphones, les tablettes, les navigateurs et les ordinateurs portables. Ces appareils peuvent se trouver derrière des pare-feux, des environnements NAT, des tours de téléphonie mobile et d'autres environnements réseau difficiles d'accès ; en outre, PubNub fournit une mise en cache des messages pour la retransmission des signaux perdus sur des environnements réseau peu fiables. PubNub y parvient en maintenant une connexion de socket toujours ouverte à chaque appareil, et en utilisant cette connexion de socket ouverte pour "pousser" les données à faible latence. PubNub fournit plus de 50 bibliothèques SDK client pour faciliter le "branchement" à PubNub avec un simple appel API PubNub Subscribe.Inversement, l'utilisation principale d'Amazon SNS est pour les cas d'utilisation de publication/souscription de serveur à serveur, ou les notifications d'utilisateurs finaux par courriel et par message texte. Pour avoir une meilleure idée de la manière dont Amazon SNS est mis en œuvre, consultez les cas d'utilisation courants d'Amazon SNS ici. Amazon SNS n'est pas non plus optimisé pour les notifications en temps réel dans l'application. Amazon SNS est plus analogue à TIBCO ou Tuxedo, qui sont des systèmes de publication/souscription de serveur à serveur. Amazon SNS n'a aucun moyen d'atteindre les appareils clients, sauf par le biais de notifications par e-mail ou SMS. Par conséquent, pour les applications qui dépendent de données à faible latence (telles que les jeux multijoueurs, les applications de chat, les applications collaboratives, etc.), Amazon SNS n'est pas la bonne solution pour cet environnement.

callbacks. L'exécution d'un serveur HTTP sur les appareils mobiles, les navigateurs et les ordinateurs de bureau pour recevoir ces notifications n'est pas pratique, à la fois à cause des pare-feux du réseau et des raisons de sécurité des appareils.

Latence d'Amazon SNS par rapport à PubNub

Le temps de latence d'Amazon SNS n'offre aucune garantie, et la grande majorité des temps de latence sont mesurés à plus d'une seconde, et souvent plusieurs secondes plus lentement. Encore une fois, cela n'a rien à voir ; Amazon SNS est conçu pour les notifications de serveur à serveur (ou email/SMS), où une latence de plusieurs secondes est souvent acceptable et attendue. Parce que PubNub fournit des données via un socket de réseau ouvert existant et établi, les latences sont inférieures à 0,25 seconde entre la publication et l'abonnement dans le percentile de 95 % des appareils abonnés. La plupart des êtres humains considèrent qu'un événement est "en temps réel" s'il est perçu dans un délai de 0,6 à 0,7 seconde.

Canaux/sujets et multiplexage PubNub et SNS

Amazon SNS permet de créer jusqu'à 100 "sujets" sur un compte. Un "topic" est équivalent à un canal PubNub. Inversement, PubNub supporte un nombre illimité de canaux PubNub. Cela permet à chaque appareil de l'utilisateur final d'avoir son propre canal pour une connectivité individuelle.

Multiplexage SNS

De plus, la prise en charge du multiplexage par PubNub permet à un appareil client de se connecter simultanément à plusieurs canaux PubNub, tout en continuant à utiliser un seul socket réseau. Cela permet à un client de s'abonner simultanément, par exemple, à un canal "privé" spécifiquement associé à un seul appareil ou à un ensemble d'appareils appartenant à la même personne, et à un canal "public" auquel un groupe ou une population entière peut également s'abonner : Supposons que vous souhaitiez diffuser en continu les variations du cours de 1 000 actions différentes. Chaque action aurait son propre canal PubNub. L'utilisateur final utiliserait le multiplexage PubNub pour s'abonner uniquement aux canaux PubNub associés aux actions qu'il souhaite suivre.

Étant donné qu'Amazon SNS ne prend pas en charge le multiplexage, ce type de cas d'utilisation n'est pas possible.

Fiabilité et redondance de SNS vs PubNub

PubNub est distribué à l'échelle mondiale dans 14 centres de données et ne cesse de croître. Toutes les données publiées dans le PubNub Global Cloud sont automatiquement répliquées au niveau mondial, ce qui permet d'obtenir une faible latence dans le monde entier, ainsi qu'une fiabilité inégalée, même en cas de défaillance d'un centre de données entier. PubNub offre une disponibilité de 99,999% pour son réseau de flux de données.

Fonctionnalités de PubNub vs AWS SNS

Au-delà de la simple publication/abonnement, PubNub offre une collection de services de construction en temps réel pour tout type d'application en temps réel. Ces services ne sont pas offerts par Amazon SNS ou d'autres services Amazon :

  • Synchronisation des données - Synchronise automatiquement les données de l'application en temps réel entre les appareils et stocke et partage les objets tout au long du cycle de vie de l'application.

  • Présence - Fournit des mises à jour en temps réel sur les utilisateurs qui sont en ligne et des alertes lorsqu'ils sont hors ligne. Ces mises à jour sont fournies par l'intermédiaire d'un "canal jumeau" PubNub multiplexé qui diffuse des mises à jour de présence chaque fois que le nombre d'utilisateurs au sein d'une application change. Une API supplémentaire appelée "Here_Now()" fournit également un décompte à la seconde près des utilisateurs dans l'application.

  • Stockage et lecture - PubNub stocke automatiquement toutes les données publiées sur chaque canal et fournit deux mécanismes pour récupérer ces données : (a) une simple requête REST pour récupérer les données en une seule fois, et (b) un mécanisme de lecture pour "lire" ces données, similaire à un DVR pour les enregistrements télévisés.

  • Analyse en temps réel - PubNub fournit diverses visualisations et statistiques d'utilisation pour afficher l'activité, la géographie et l'utilisation des utilisateurs. Un exemple de capture d'écran est présenté ci-dessous

  • Offline Mobile Push - PubNub fournit également un mécanisme de repli pour les messages envoyés aux appareils mobiles lorsque l'application mobile n'est pas en cours d'exécution (ou en arrière-plan). PubNub peut se rabattre sur une "notification push" mobile, garantissant que l'utilisateur final mobile est informé même lorsque son téléphone est dans sa poche. Dès que l'application est lancée, elle recommence à utiliser le réseau de flux de données.

  • Chiffrement AES - PubNub offre un support de chiffrement AES 256 prêt à l'emploi, garantissant que les données restent chiffrées lorsqu'elles transitent par le réseau PubNub. Si Amazon SNS fournit HTTPS, cela signifie que les données ne sont pas cryptées lorsqu'elles transitent par le réseau Amazon. Cela invalide immédiatement l'utilisation d'Amazon SNS pour les applications HIPAA, SAS70 et autres applications axées sur la sécurité.

  • Multiplexage - PubNub améliore la communication multicanal grâce à un mécanisme qui permet à tous les sujets de données d'être diffusés sur une seule connexion Socket.

Socket. Avec PubNub Multiplexing, les économies sont plus évidentes avec les ressources des appareils mobiles tels que les téléphones sur batterie et une connectivité réseau plus lente. Les données sont compressées et regroupées via un fenêtrage configurable afin de prolonger la durée de vie de la batterie et d'améliorer l'expérience de l'utilisateur final dans des conditions de réseau en constante évolution.

Quand choisir PubNub, SNS ou AWS Kinesis ?

Amazon SNS présente une variété d'utilisations intéressantes, principalement centrées sur les notifications de serveur à serveur et les alertes d'utilisateurs finaux par email/SMS, connues sous le nom de sujets SNS. Il a été initialement développé comme un moyen d'orchestrer les données entre divers autres services cloud d'Amazon AWS, et est donc principalement utilisé pour les opérations de back-end des serveurs et le mouvement des données. En revanche, AWS Kinesis est souvent choisi pour la diffusion de données en continu et l'analyse en temps réel.

En revanche, PubNub permet aux développeurs de créer des applications en temps réel qui peuvent servir simultanément un grand nombre d'utilisateurs. Cette différence distingue PubNub et le rend particulièrement adapté aux applications qui requièrent des fonctionnalités temps réel robustes et efficaces, ainsi qu'un système de livraison de messages transparent.

Comment PubNub peut-il vous aider ?

Notre plateforme aide les développeurs à construire, fournir et gérer l'interactivité en temps réel pour les applications web, les applications mobiles et les appareils IoT.

Notre plateforme repose sur le réseau de messagerie en temps réel le plus vaste et le plus évolutif du secteur. Avec plus de 19 points de présence dans le monde, supportant 1 milliard d'utilisateurs actifs mensuels, et une fiabilité de 99,999%, vous n'aurez jamais à vous soucier des pannes, des limites de concurrence, ou de tout problème de latence causé par des pics de trafic.

Découvrez PubNub

Regardez le Live Tour pour comprendre les concepts essentiels derrière chaque application alimentée par PubNub en moins de 5 minutes.

S'installer

Créez un compte PubNub pour un accès immédiat et gratuit aux clés PubNub.

Commencer

La documentation et les SDK de PubNub vous permettront d'être opérationnel, quel que soit votre cas d'utilisation. Notre documentation complète et à jour fournit des instructions claires et des exemples utiles pour assurer un démarrage en douceur de votre processus de développement.

Sommaire

Qu'est-ce quePubNub ? Qu'est-ce queAWS SNS ? À quoi sert SNS?latence deSNSPrix et coûts de SNSPublicationsur les appareils des utilisateurs finaux : PubNub vs Amazon SNSAmazonSNS latency vs. PubNubChaînes/sujetset multiplexage PubNub et SNSSNSMultiplexageFiabilité et redondanceSNSvs PubNubPubNubvs AWS SNS featuresQuandchoisir PubNub, SNS, ou AWS Kinesis?Comment PubNub peut vous aider?Experience PubNubGetSetupGetStarted

Comment PubNub peut-il vous aider ?

Cet article a été publié à l'origine sur PubNub.com

Notre plateforme aide les développeurs à construire, livrer et gérer l'interactivité en temps réel pour les applications web, les applications mobiles et les appareils IoT.

La base de notre plateforme est le réseau de messagerie en temps réel le plus grand et le plus évolutif de l'industrie. Avec plus de 15 points de présence dans le monde, 800 millions d'utilisateurs actifs mensuels et une fiabilité de 99,999 %, vous n'aurez jamais à vous soucier des pannes, des limites de concurrence ou des problèmes de latence causés par les pics de trafic.

Découvrez PubNub

Découvrez le Live Tour pour comprendre les concepts essentiels de chaque application alimentée par PubNub en moins de 5 minutes.

S'installer

Créez un compte PubNub pour un accès immédiat et gratuit aux clés PubNub.

Commencer

La documentation PubNub vous permettra de démarrer, quel que soit votre cas d'utilisation ou votre SDK.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .