eSeGeCe — Componentes de comunicação de nível empresarial para Delphi e .NETPular para o conteúdo
DESTAQUE · sgcMQ
Todos os brokers, um só transporte
Sete componentes cliente falam MQTT 3.1.1 e 5.0, AMQP 0.9.1, AMQP 1.0, o protocolo de wire do Apache Kafka e STOMP 1.0 a 1.2, com dialetos de broker para RabbitMQ e ActiveMQ. Cada frame é analisado e escrito em Object Pascal dentro da biblioteca, então não há librdkafka, nem Paho, nem Qpid, nem DLL para distribuir. Todos os sete rodam sobre um único TsgcTCPClient, aberto em TCP puro ou envolvido em TLS.
O sgcMQ é um pacote autônomo. Ele inclui o runtime sgcWebSockets Core sobre o qual é construído, e toda licença vem com código-fonte completo, então você depura as implementações dos protocolos passo a passo no seu próprio debugger.
7Componentes clienteMQTT, AMQP 0.9.1, AMQP 1.0, Kafka, STOMP, STOMP RabbitMQ e STOMP ActiveMQ, em uma única página de paleta.
5Famílias de protocolosCada formato de wire analisado e escrito em Object Pascal, dentro da biblioteca.
6Plataformas-alvoWin32, Win64, Linux64, macOS, iOS e Android, a partir de uma única árvore de código-fonte.
0Bibliotecas externasSem librdkafka, sem Paho, sem Qpid, sem DLL e sem proxy REST na frente.
1TransporteUm único TsgcTCPClient transporta todos os sete, então TLS, proxy e reconexão são configurados uma única vez.
MQ
sgcMQ
Clientes de filas de mensagens e streaming para Delphi e C++ Builder. Um pacote autônomo com o runtime sgcWebSockets Core incluído, código-fonte completo e implantação sem royalties nos seis alvos.
Solte o componente do protocolo em um formulário, atribua um TsgcTCPClient à sua propriedade Client, conecte os eventos e chame os verbos do próprio protocolo. A nomenclatura é consistente nos sete, então aprender um já te leva quase até o fim dos demais.
MQTT 3.1.1 & 5.0
Publish, Subscribe e Toda a Maquinaria de QoS
TsgcWSPClient_MQTT cobre as duas versões do protocolo por trás de uma única propriedade MQTTVersion. QoS 0, 1 e 2 com a troca PUBACK, PUBREC, PUBREL e PUBCOMP exposta como eventos em vez de escondida, mensagens retidas, Last Will and Testament, assinaturas com curinga e sessões retomáveis. A versão 5 adiciona reason codes, propriedades de usuário, aliases de tópico, assinaturas compartilhadas e a viagem de ida e volta AUTH.
TsgcWSPClient_AMQP fala AMQP 0.9.1, o protocolo para o qual o RabbitMQ foi construído: canais, declaração de exchanges e filas, bindings, consumidores, confirmações de publicador, QoS de prefetch e transações. TsgcWSPClient_AMQP1 fala AMQP 1.0, o padrão OASIS por trás do Azure Service Bus e do Event Hubs: containers, sessões, links de envio e recepção, controle de fluxo baseado em crédito, SASL e os auxiliares de Claims-Based Security. Formato de wire diferente, modelo de objetos diferente, então há um componente para cada um.
TsgcWSPClient_Kafka fala o protocolo de wire do Kafka sobre TCP, incluindo o formato de record batch v2. Produza com o nível de acks escolhido e compressão gzip, consuma por meio de um grupo em que a descoberta do coordenador, join, sync, heartbeat e rebalanceamento são tratados para você, ou leia uma partição por offset.
TsgcWSPClient_STOMP trata SEND, SUBSCRIBE, UNSUBSCRIBE, ACK, NACK, recibos, heart-beating bidirecional e os frames de transação BEGIN, COMMIT e ABORT. Dois descendentes transformam as convenções de destino dos brokers em métodos nomeados, um para o RabbitMQ e um para o ActiveMQ.
Todos os sete clientes e o transporte por baixo deles estão registrados para Win32, Win64, Linux64, macOS, iOS e Android, do Delphi 7 ao RAD Studio 13 e no C++ Builder. O pacote de mensageria não carrega nenhuma restrição de plataforma.
Crie o componente do protocolo, atribua o transporte, conecte os eventos, chame os verbos. Trocar de um listener em texto puro para um criptografado é um número de porta e TLS := True no transporte, e nada acima dele muda.
A mesma forma em Object Pascal e em C++ Builder, e a mesma forma para os outros três componentes. A matriz completa de recursos →
ANTES DE COMPRAR
Duas Coisas Que Vale Saber Antes
O que o sgcMQ precisa de você, e como os bytes chegam ao broker. As duas respostas são curtas, e as duas estão nesta página, não nas letras miúdas.
Listeners nativos do broker
protocolo componente 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* a porta que o listener criptografado do próprio broker estiver
configurado para usar. Estes são os padrões convencionais. A Port
do transporte aceita a porta que a sua implantação realmente usa.
O sgcMQ é autônomo
Tudo o que os componentes precisam vem embutido no sgcMQ: o runtime sgcWebSockets Core, o transporte TsgcTCPClient, a camada TLS e os utilitários de JSON. Um instalador, código-fonte completo na caixa.
TCP puro e TLS, e só isso
Todos os protocolos do pacote rodam sobre um socket bruto, aberto em texto puro ou envolvido em TLS. Isso cobre as portas nativas de broker listadas aqui, que é como MQTT, AMQP, Kafka e STOMP são normalmente implantados. Rodar um protocolo sobre WebSocket, por exemplo MQTT sobre WebSocket ou Web-STOMP, exige o cliente WebSocket, e esse acompanha o sgcWebSockets. Verifique qual transporte o seu broker expõe antes de escolher.
Delphi e C++ Builder
O sgcMQ tem como alvo do Delphi 7 ao RAD Studio 13 e o C++ Builder, nas seis plataformas. Não há build .NET deste pacote. Se você precisa de mensageria a partir do .NET, ela vive no sgcWebSockets.
O transporte cuida do encanamento
TLSOptions.IOHandler escolhe OpenSSL para builds multiplataforma ou SChannel no Windows, o WatchDog reconecta depois de uma queda de conexão, e a travessia de proxy HTTP CONNECT e o IPv6 não precisam de configuração extra. Configure uma vez e todos os protocolos acima herdam.
O sgcMQ implementa os protocolos publicados em vez de encapsular um SDK de fornecedor, então o broker é escolha sua: RabbitMQ, Apache Kafka, Eclipse Mosquitto, HiveMQ, EMQX, Apache ActiveMQ, Azure Service Bus e Event Hubs, ou AWS IoT Core. Trocar de broker é um host, uma porta e um conjunto de credenciais.
O ECOSSISTEMA
Nove Bibliotecas, Uma Caixa de Ferramentas
O sgcMQ é uma das nove bibliotecas de componentes da eSeGeCe para Delphi, C++ Builder e .NET. Elas compartilham convenções, vêm com código-fonte completo e são implantadas sem royalties.
sgcMQ
Componentes cliente de MQTT, AMQP 0.9.1 e 1.0, Apache Kafka e STOMP para Delphi e C++ Builder. Produto autônomo, com o runtime sgcWebSockets Core incluído.
WebSocket, HTTP/2, MQTT, AMQP, WebRTC, IA e mais de 30 integrações de API para Delphi, C++ Builder, Lazarus e .NET. É onde vive o transporte WebSocket.
Componentes de IA, LLM e MCP para Delphi e C++ Builder. Sete provedores de LLM por trás de um único componente, além de MCP, embeddings e fala. Produto autônomo, com o runtime sgcWebSockets Core incluído.
MQTT, AMQP, Kafka e STOMP em um único pacote, implementados nativamente, com o runtime sgcWebSockets Core incluído e código-fonte completo na caixa. Windows, Linux, macOS, iOS e Android a partir do mesmo código.