Une checklist d'appel d'offres pour un broker MQTT maintient l'évaluation des fournisseurs centrée sur ce qui comptera en production, plutôt que sur celui qui a la plus longue page de fonctionnalités. Cet article vous donne une liste de questions prête à l'emploi, regroupées par domaine, explique pourquoi chacune compte et à quoi ressemble une réponse solide, et montre en exemple comment ConnectMQ y répond, y compris sur les fonctionnalités qu'il ne propose pas.
Comment utiliser cette checklist d'appel d'offres
Copiez les questions dans votre appel d'offres ou votre tableau d'évaluation et demandez à chaque fournisseur de répondre par écrit. La colonne « Exemple de réponse » montre comment ConnectMQ répond, pour que vous voyiez à quoi ressemble une réponse précise et vérifiable. Trois habitudes rendent les réponses comparables :
- Demandez des faits, pas des adjectifs. « Hautement scalable » n'est pas une réponse ; « jusqu'à N connexions par plan, avec des erreurs de quota renvoyées sous forme de reason codes MQTT 5 » en est une.
- Demandez ce qui n'est pas pris en charge. Les fournisseurs honnêtes vous le diront. Un silence ou une formulation vague signifie généralement non.
- Vérifiez concrètement les affirmations importantes. La plupart des brokers MQTT managés proposent une offre gratuite ou un essai. Connectez un vrai appareil, provoquez des pannes et regardez à quoi ressemblent les erreurs.
Avant de rédiger les exigences, il est utile de savoir dans les grandes lignes comment choisir un broker MQTT pour l'IoT et quel modèle de déploiement vous souhaitez. Le guide du broker MQTT cloud présente les options serverless, dédiée et bring-your-own-cloud.
1. Prise en charge du protocole
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| Quelles versions de MQTT sont prises en charge ? | MQTT 5 ajoute les reason codes, l'expiration et les abonnements partagés ; les anciens appareils ne parlent parfois que 3.1.1 | MQTT 3.1.1 et 5.0 |
| Quels transports et quels ports ? | Les navigateurs ont besoin de WebSocket ; les réseaux stricts n'autorisent parfois que du trafic TLS de type 443 | TCP 1883, TLS 8883, WebSocket 8083, Secure WebSocket 8084 (chemin /mqtt) |
| Quels niveaux de QoS selon le plan ? | Certaines charges de travail exigent la livraison exactement une fois de la QoS 2 | QoS jusqu'à 1 sur Serverless Free ; QoS 2 sur Serverless Paid et au-delà |
| Taille maximale des messages ? | Des fragments de firmware ou des images peuvent dépasser de petites limites | 256 Ko sur Serverless Free, 1 Mo sur Serverless Paid |
| Quelles fonctionnalités MQTT 5 ? | Les abonnements partagés permettent des consommateurs en répartition de charge | Abonnements partagés, retained messages, expiration de session, topic alias, expiration des messages, response topic, reason codes |
| Comment les dépassements de quota sont-ils signalés ? | Les clients doivent distinguer les erreurs de quota des pannes | Reason codes MQTT 5, par exemple 0x97 quota exceeded |
2. Sécurité et contrôle d'accès
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| TLS est-il disponible sur chaque transport, avec un certificat reconnu publiquement ? | Les certificats auto-signés compliquent chaque appareil | TLS et WebSocket sécurisé avec un certificat Let's Encrypt |
| Comment les identifiants sont-ils émis et renouvelés ? | La gestion manuelle des identifiants ne passe pas à l'échelle | Nom d'utilisateur, mot de passe et client ID générés dans le portail |
| Les client IDs sont-ils liés aux identifiants ? | Empêche un appareil d'usurper la session d'un autre | Oui, les client IDs sont liés aux identifiants émis |
| Existe-t-il une protection contre la force brute ? | Les brokers exposés sont scannés en permanence | Blocage des IP après des échecs de connexion répétés, plus protection anti-flood |
| Des ACL par topic sont-elles disponibles ? | Nécessaires lorsque des parties non fiables partagent un broker | Non proposées ; isolez par brokers ou identifiants séparés et définissez la propriété des topics dans l'application |
| Quelles certifications de conformité sont détenues ? | Les secteurs réglementés peuvent les exiger | Aucune certification revendiquée ; évaluez selon vos propres exigences |
Ne considérez pas un « non » comme automatiquement éliminatoire. Les ACL par topic comptent énormément pour une plateforme multi-parties et très peu pour la flotte d'une seule équipe. Nos bonnes pratiques de sécurité MQTT vous aident à déterminer les contrôles dont vous avez réellement besoin.
3. Isolation et mutualisation
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| Mon trafic est-il isolé de celui des autres clients ? | Voisins bruyants ou malveillants sur les clusters mutualisés | Isolation multi-tenant avec quotas par plan sur Serverless |
| Une option dédiée ou mono-tenant est-elle disponible ? | Performances prévisibles et isolation plus stricte | Plan Dedicated avec un cluster isolé |
| Le broker peut-il tourner dans mon propre compte cloud ? | Résidence des données et engagements cloud existants | BYOC : tourne dans votre compte cloud, géré par ConnectMQ |
| Puis-je le faire tourner entièrement sur ma propre infrastructure ? | Sites isolés (air-gapped) ou sur site | Self Managed Enterprise |
Posez ces quatre mêmes questions à chaque fournisseur. Les réponses varient fortement sur le marché, et la bonne dépend de vos contraintes réglementaires et réseau plutôt que d'une option universellement meilleure. Les clusters mutualisés sont économiques ; les clusters dédiés échangent du coût contre de la prévisibilité.
4. Fiabilité et exploitation
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| Existe-t-il un SLA contractuel, et que couvre-t-il ? | Définit vos recours en cas de panne | Aucun chiffre de SLA publié ; discutez directement de vos exigences |
| Le broker fonctionne-t-il en cluster ou avec réplication ? | Détermine le comportement en cas de défaillance d'un nœud | Le clustering et la réplication ne sont pas proposés comme fonctionnalités |
| Les sessions et les retained messages sont-ils conservés à travers les redémarrages ? | Influe sur ce que les clients doivent rétablir | Non garanti ; les clients doivent se réabonner et republier leur état à la reconnexion |
| Comment savoir si un client est connecté ? | Dépannage de base | $SYS/broker/connection/{clientId}/state et le portail |
| Comment les mises à jour planifiées sont-elles communiquées ? | Évite les interruptions surprises | Demandez à chaque fournisseur sa procédure de préavis |
Les réponses sur la fiabilité méritent l'examen le plus attentif. Quel que soit le fournisseur, concevez des clients qui tolèrent un redémarrage du broker ; notre guide pour survivre à une panne de broker MQTT montre comment, et le SLA d'un broker MQTT explique comment lire les conditions d'un SLA.
5. Outillage et observabilité
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| Existe-t-il une console web ? | Débogage rapide sans installer d'outils | Portail avec tableau de bord et client MQTT dans le navigateur |
| Puis-je parcourir les topics en direct ? | Repère les bugs de nommage et de payload | Explorateur de topics en direct |
| Existe-t-il des alertes intégrées ? | Alerte précoce sans infrastructure supplémentaire | Règles d'alerte de seuil et journal des alertes |
| Outils desktop et IDE ? | Productivité des développeurs | Extension VS Code de ConnectMQ et explorateur MQTT ConnectMQ Desktop |
| Quelles langues d'interface ? | Facilité d'utilisation pour les opérateurs locaux | Anglais et turc |
| Existe-t-il une offre gratuite pour l'évaluation ? | Permet de tester avant d'acheter | Plan Serverless Free, sans carte bancaire |
6. Intégration industrielle et des données
| Question | Pourquoi c'est important | Exemple de réponse |
|---|---|---|
| Sparkplug B est-il compris ? | Les payloads Protobuf sont opaques dans les outils génériques | Décode Sparkplug B (Protobuf et JSON) |
| Le Unified Namespace est-il pris en charge ? | La structure ISA-95 est courante dans l'industrie manufacturière | Détecte les topics ISA-95 et UNS ; vue des appareils par niveau ISA-95 |
| Les données Sparkplug peuvent-elles être republiées en topics lisibles ? | Permet aux consommateurs non Sparkplug d'utiliser les données | Republie dans des topics ISA-95, par ex. spBv1.0/factory1/DDATA/line1/cnc1 vers connectmq/factory1/production/line1/cnc1/telemetry |
| Existe-t-il un moteur de règles ou des webhooks ? | Routage et transformation au sein du broker | Non proposés |
| Existe-t-il des ponts natifs vers Kafka, des bases de données ou des services cloud ? | Réduit le code d'intégration | Non proposés ; utilisez Node-RED, Telegraf ou un petit service abonné qui se connecte comme client MQTT |
C'est sur les lignes d'intégration que les fournisseurs diffèrent le plus. Un broker doté d'un moteur de règles intégré fait économiser du code mais couple votre pipeline de données à ce fournisseur. Un broker simple associé à des outils externes garde le pipeline portable. Aucune approche n'est universellement meilleure ; décidez de votre préférence avant de noter. Si votre usine utilise Sparkplug B, testez le décodage avec vos vrais payloads pendant la preuve de concept.
7. Aspects commerciaux et support
Demandez à chaque fournisseur :
- Comment le service est-il tarifé : par connexions, messages, trafic, durée de session ou capacité dédiée ? (Voir notre explication sur la tarification des brokers MQTT.)
- Que se passe-t-il en cas de dépassement de quota : limitation, rejet ou facturation du dépassement ?
- Puis-je changer de plan sans modifier les endpoints ni le code client ?
- Quels canaux de support et quels délais de réponse s'appliquent à chaque palier ?
- Comment exporter ma configuration et partir ? Des clients MQTT standard sont la meilleure protection contre l'enfermement propriétaire.
Noter les réponses
Pondérez chaque domaine selon son importance pour votre projet, notez les réponses de 0 à 3 et multipliez. Une simple grille garde la décision traçable :
Area Weight Vendor A Vendor B Vendor C
Protocol support 3 . . .
Security and access 3 . . .
Isolation and tenancy 2 . . .
Reliability and ops 3 . . .
Tooling 1 . . .
Industrial integration 2 . . .
Commercial and support 2 . . .
Weighted total
Terminez par une preuve de concept concrète avec les deux fournisseurs les mieux classés, en utilisant vos vrais appareils, payloads et structure de topics.
Évaluez ConnectMQ concrètement
Le moyen le plus rapide de vérifier la colonne ConnectMQ est de l'essayer. Créez un broker gratuit sur app.connectmq.com avec le plan Serverless, sans carte bancaire, et testez la prise en charge du protocole, les codes d'erreur et l'outillage avec vos propres clients. Vous pouvez aussi commencer par pointer un appareil de test vers le serveur MQTT public gratuit, sans y envoyer de données de production. Découvrez ConnectMQ en tant que broker MQTT managé.
Questions fréquentes
Quelle est la section la plus importante d'un appel d'offres pour un broker MQTT ?
Généralement la fiabilité et la sécurité, car ce sont les plus difficiles à corriger après le lancement. La prise en charge du protocole se règle souvent rapidement par oui ou non, tandis que l'outillage et l'intégration influent sur la productivité au quotidien.
Dois-je exiger un moteur de règles dans mon broker MQTT ?
Seulement si vous voulez du routage et de la transformation au sein du broker. Beaucoup d'équipes préfèrent un broker simple avec des outils externes comme Node-RED ou un service abonné, ce qui garde le pipeline de données portable d'un fournisseur à l'autre.
Combien de temps doit durer une preuve de concept de broker ?
Une preuve de concept ciblée avec de vrais appareils prend généralement quelques jours plutôt que quelques semaines. Testez les limites de connexion, le comportement de reconnexion, les codes d'erreur et les outils que votre équipe utilisera au quotidien.
Pourquoi la checklist inclut-elle des éléments que ConnectMQ ne prend pas en charge ?
Parce qu'un appel d'offres honnête doit couvrir chaque exigence qui compte pour vous. Lister les manques vous permet de juger s'ils sont importants pour votre projet et comment vous les combleriez avec des outils externes.



