eSeGeCe — Composants de communication d’entreprise pour Delphi & .NETAller au contenu
EN VEDETTE · sgcMQ
Tous les brokers, un seul support de transport
Sept composants clients parlent MQTT 3.1.1 et 5.0, AMQP 0.9.1, AMQP 1.0, le protocole binaire d’Apache Kafka et STOMP 1.0 à 1.2, avec des dialectes de brokers pour RabbitMQ et ActiveMQ. Chaque trame est analysée et écrite en Object Pascal dans la bibliothèque, il n’y a donc ni librdkafka, ni Paho, ni Qpid, ni DLL à distribuer. Les sept circulent sur un seul TsgcTCPClient, ouvert en clair ou enveloppé dans du TLS.
sgcMQ est un package autonome. Il embarque le runtime sgcWebSockets Core sur lequel il repose, et chaque licence est livrée avec le code source complet, si bien que les implémentations des protocoles se tracent dans ton propre débogueur.
7Composants clientsMQTT, AMQP 0.9.1, AMQP 1.0, Kafka, STOMP, STOMP RabbitMQ et STOMP ActiveMQ, sur une seule page de palette.
5Familles de protocolesChaque format binaire est analysé et écrit en Object Pascal, dans la bibliothèque.
6Plateformes ciblesWin32, Win64, Linux64, macOS, iOS et Android, à partir d’une seule arborescence source.
0Bibliothèques externesNi librdkafka, ni Paho, ni Qpid, ni DLL, ni proxy REST devant.
1Support de transportUn seul TsgcTCPClient porte les sept, donc TLS, proxy et reconnexion se configurent une seule fois.
MQ
sgcMQ
Des clients de files de messages et de streaming pour Delphi et C++ Builder. Un package autonome avec le runtime sgcWebSockets Core inclus, le code source complet et un déploiement sans royalties sur les six cibles.
Dépose le composant de protocole sur une fiche, assigne un TsgcTCPClient à sa propriété Client, branche les événements, puis appelle les verbes propres au protocole. Le nommage est cohérent sur les sept, en apprendre un te mène donc déjà presque au bout des autres.
MQTT 3.1.1 & 5.0
Publier, s’abonner et toute la mécanique QoS
TsgcWSPClient_MQTT couvre les deux versions du protocole derrière une seule propriété MQTTVersion. QoS 0, 1 et 2 avec l’échange PUBACK, PUBREC, PUBREL et PUBCOMP exposé sous forme d’événements plutôt que caché, messages retenus, Last Will and Testament, abonnements avec jokers et sessions reprenables. La version 5 ajoute les codes de raison, les propriétés utilisateur, les alias de topics, les abonnements partagés et l’aller-retour AUTH.
TsgcWSPClient_AMQP parle AMQP 0.9.1, le protocole pour lequel RabbitMQ a été conçu : canaux, déclaration d’exchanges et de files, bindings, consommateurs, acquittements côté éditeur, QoS de prefetch et transactions. TsgcWSPClient_AMQP1 parle AMQP 1.0, le standard OASIS derrière Azure Service Bus et Event Hubs : containers, sessions, liens émetteur et récepteur, contrôle de flux à crédits, SASL et les utilitaires Claims-Based Security. Format binaire différent, modèle objet différent, il y a donc un composant pour chacun.
TsgcWSPClient_Kafka parle le protocole binaire de Kafka sur TCP, y compris le format de lot d’enregistrements v2. Produis avec le niveau d’acks de ton choix et la compression gzip, consomme via un groupe où la découverte du coordinateur, l’adhésion, la synchronisation, le heartbeat et le rééquilibrage sont pris en charge pour toi, ou lis une partition par offset.
TsgcWSPClient_STOMP gère SEND, SUBSCRIBE, UNSUBSCRIBE, ACK, NACK, les reçus, le heart-beating bidirectionnel et les trames de transaction BEGIN, COMMIT et ABORT. Deux descendants transforment les conventions de destination des brokers en méthodes nommées, un pour RabbitMQ et un pour ActiveMQ.
Les sept clients et le support de transport en dessous sont enregistrés pour Win32, Win64, Linux64, macOS, iOS et Android, de Delphi 7 à RAD Studio 13 et sur C++ Builder. Le pack de messagerie ne porte aucune restriction de plateforme.
Crée le composant de protocole, assigne le support de transport, branche les événements, appelle les verbes. Passer d’un écouteur en clair à un écouteur chiffré, c’est un numéro de port et TLS := True sur le support de transport, et rien ne change au-dessus.
Ce que sgcMQ attend de toi, et comment les octets atteignent le broker. Les deux réponses sont courtes, et les deux sont sur cette page plutôt qu’en petits caractères.
Écouteurs natifs des brokers
protocole composant TCP TLS
MQTT 3.1.1 / 5.0 TsgcWSPClient_MQTT18838883
AMQP 0.9.1 TsgcWSPClient_AMQP56725671
AMQP 1.0 TsgcWSPClient_AMQP156725671
Apache Kafka TsgcWSPClient_Kafka9092*
STOMP TsgcWSPClient_STOMP61613*
STOMP, RabbitMQ TsgcWSPClient_STOMP_RabbitMQ6161361614
STOMP, ActiveMQ TsgcWSPClient_STOMP_ActiveMQ6161361612* selon l’écouteur chiffré configuré sur le broker lui-même.
Ce sont les valeurs par défaut conventionnelles. Le Port du
support de transport accepte ce que ton déploiement écoute
réellement.
sgcMQ est autonome
Tout ce dont les composants ont besoin est inclus dans sgcMQ : le runtime sgcWebSockets Core, le support de transport TsgcTCPClient, la couche TLS et les utilitaires JSON. Un seul installateur, le code source complet dans la boîte.
Du TCP simple et du TLS, et rien d’autre
Chaque protocole du pack circule sur un socket brut, ouvert en clair ou enveloppé dans du TLS. Cela couvre les ports natifs des brokers listés ici, c’est ainsi que MQTT, AMQP, Kafka et STOMP sont normalement déployés. Faire tourner un protocole sur WebSocket à la place, par exemple MQTT sur WebSocket ou Web-STOMP, nécessite le client WebSocket, et celui-ci est livré avec sgcWebSockets. Vérifie quel transport ton broker expose avant de choisir.
Delphi et C++ Builder
sgcMQ cible Delphi 7 à RAD Studio 13 et C++ Builder, sur les six plateformes. Il n’existe pas de version .NET de ce pack. Si tu as besoin de messagerie depuis .NET, elle se trouve dans sgcWebSockets.
Le support de transport fait la plomberie
TLSOptions.IOHandler choisit OpenSSL pour les builds multiplateformes ou SChannel sous Windows, WatchDog reconnecte après une coupure, et la traversée de proxy HTTP CONNECT comme l’IPv6 ne demandent aucune configuration supplémentaire. Règle-le une fois et chaque protocole au-dessus en hérite.
sgcMQ implémente les protocoles publiés au lieu d’encapsuler le SDK d’un éditeur, le broker reste donc ton choix : RabbitMQ, Apache Kafka, Eclipse Mosquitto, HiveMQ, EMQX, Apache ActiveMQ, Azure Service Bus et Event Hubs, ou AWS IoT Core. Changer de broker, c’est un hôte, un port et un jeu d’identifiants.
L’ÉCOSYSTÈME
Neuf bibliothèques, une seule boîte à outils
sgcMQ est l’une des neuf bibliothèques de composants eSeGeCe pour Delphi, C++ Builder et .NET. Elles partagent les mêmes conventions, elles sont livrées avec le code source complet et se déploient sans royalties.
sgcMQ
Composants clients MQTT, AMQP 0.9.1 et 1.0, Apache Kafka et STOMP pour Delphi et C++ Builder. Autonome, le runtime sgcWebSockets Core est inclus.
WebSocket, HTTP/2, MQTT, AMQP, WebRTC, IA et plus de 30 intégrations d’APIs pour Delphi, C++ Builder, Lazarus et .NET. C’est là que vit le support de transport WebSocket.
Composants IA, LLM et MCP pour Delphi et C++ Builder. Sept fournisseurs de LLM derrière un seul composant, plus MCP, embeddings et synthèse vocale. Autonome, le runtime sgcWebSockets Core est inclus.
MQTT, AMQP, Kafka et STOMP dans un seul package, implémentés nativement, avec le runtime sgcWebSockets Core inclus et le code source complet dans la boîte. Windows, Linux, macOS, iOS et Android à partir du même code.