sgcWebSockets Coloque em produção um servidor WebSocket, ainda esta tarde.

Cliente e servidor compatíveis com a RFC 6455, mais de 10.000 conexões simultâneas, TLS 1.3, IOCP no Windows e EPOLL no Linux. WebSocket, HTTP/2, MQTT, AMQP, STOMP, WAMP, SSE, WebRTC e IA para Delphi 7 a RAD Studio 13, C++Builder, Lazarus e .NET 2.0 a .NET 10, com uma única API em todos os destinos.

Edições Standard, Professional e Enterprise →
  • Conformidade com RFC 6455
  • TLS 1.2 e 1.3
  • IOCP · EPOLL
  • Delphi · C++Builder · Lazarus
  • .NET
  • Código-fonte completo, sem royalties
  • 10.000+Conexões simultâneas em um único processo de servidor
  • < 1 msLatência de quadro no localhost
  • 761+Componentes em uma única árvore de código-fonte
  • 30+Integrações de API
  • 14Corretoras de criptomoedas com clientes de streaming
Veja funcionando

Veja o sgcWebSockets em dois minutos.

Tours narrados e legendados da biblioteca e dos pacotes construídos a partir dela. Escolha um na lista. Nada é baixado até você apertar o play.

Parede de protocolos

Todos os protocolos de rede que a sua pilha já fala.

Implementações nativas de cliente e servidor, não camadas finas sobre um motor de navegador. Combine protocolos em um único aplicativo e compartilhe um único pool de conexões, com clientes prontos para os brokers, hubs e serviços que a sua equipe de infraestrutura já opera.

Transportes em tempo real

Ver →
  • WebSocket · RFC 6455
  • HTTP/2
  • HTTP/3 · QUIC
  • SSE
  • WebRTC

Protocolos de mensageria

Ver →
  • MQTT 3.1.1 & 5.0
  • AMQP 0.9.1 & 1.0
  • STOMP
  • WAMP v2

Hubs e brokers

Ver →
  • Socket.IO v4
  • SignalR Core
  • Pusher Channels
  • RabbitMQ
  • HiveMQ
  • Mosquitto
  • EMQX
  • ActiveMQ
  • IBM MQ

Nuvem e IoT

Ver →
  • AWS IoT Core
  • Azure IoT Hub
  • QoS 0/1/2
  • Assinaturas compartilhadas

Referência completa de protocolos

Uma API, três linguagens

Conectar, assinar, transmitir.

A mesma tarefa pub/sub escrita com os mesmos nomes de componentes em Delphi, C++Builder e C#. Aprenda a API uma vez e reutilize em todos os alvos que você distribui.

uses
  sgcWebSocket, sgcWebSocket_Classes,
  sgcWebSocket_Protocol_sgc_Client;

procedure TForm1.FormCreate(Sender: TObject);
begin
  FClient := TsgcWebSocketClient.Create(Self);
  FClient.Host := 'www.esegece.com';
  FClient.Port := 2053;
  FClient.TLS := True;
  FClient.OnConnect := ClientConnect;

  FProtocol := TsgcWSPClient_sgc.Create(Self);
  FProtocol.Client := FClient;
  FProtocol.OnMessage := ProtocolMessage;

  FClient.Active := True;
end;

procedure TForm1.ClientConnect(Connection: TsgcWSConnection);
begin
  FProtocol.Subscribe('orders');
  FProtocol.Broadcast('{"id":42,"status":"filled"}', 'orders');
end;

procedure TForm1.ProtocolMessage(Connection: TsgcWSConnection;
  const Text: string);
begin
  Memo1.Lines.Add(Text);
end;
// uses: sgcWebSocket, sgcWebSocket_Classes,
//       sgcWebSocket_Protocol_sgc_Client

FClient = new TsgcWebSocketClient(this);
FClient->Host = "www.esegece.com";
FClient->Port = 2053;
FClient->TLS  = true;
FClient->OnConnect = ClientConnect;

FProtocol = new TsgcWSPClient_sgc(this);
FProtocol->Client = FClient;
FProtocol->OnMessage = ProtocolMessage;

FClient->Active = true;

void __fastcall TForm1::ClientConnect(TsgcWSConnection *Connection)
{
  FProtocol->Subscribe("orders");
  FProtocol->Broadcast("{\"id\":42,\"status\":\"filled\"}", "orders");
}

void __fastcall TForm1::ProtocolMessage(TsgcWSConnection *Connection,
  const UnicodeString Text)
{
  Memo1->Lines->Add(Text);
}
using esegece.sgcWebSockets;

var client = new TsgcWebSocketClient();
client.Host = "www.esegece.com";
client.Port = 2053;
client.TLS  = true;

var protocol = new TsgcWSPClient_sgc();
protocol.Client = client;
protocol.OnMessage += (conn, text) => Console.WriteLine(text);

client.OnConnect += (conn) =>
{
  protocol.Subscribe("orders");
  protocol.Broadcast("{\"id\":42,\"status\":\"filled\"}", "orders");
};

client.Active = true;
  1. Inicie um servidor em quatro linhasUm TsgcWebSocketServer com uma porta, um handler OnMessage e Active := True formam um servidor de eco em execução. Connection.WriteData responde ao cliente que enviou a mensagem.
  2. Conectar e assinarUm TsgcWebSocketClient com TLS ativado, mais o componente de protocolo sgc, assina um canal nomeado no instante em que se conecta.
  3. Transmitir para o canalO lado servidor é a imagem espelhada. TsgcWebSocketServer.Broadcast(Text, 'orders') distribui o mesmo payload para cada assinante do canal.
Um frame entra, um broadcast sai para cada cliente do canal.

Leia o guia de Primeiros Passos

O que você pode construir

De mesas de operações a agentes de IA.

Todos eles rodam sobre os mesmos componentes de cliente e servidor que você instala na sua IDE hoje.

Chat em tempo real em escala

Conexões persistentes, presença, canais nomeados e mensagens binárias, com um servidor multithread projetado para milhares de usuários simultâneos.

Comunicação em tempo real →

Trading algorítmico

Clientes de streaming prontos para 14 exchanges de cripto, com TLS, frames binários e reconexão automática no feed de dados de mercado.

APIs de exchanges →

Telemetria IoT

MQTT 3.1.1 e 5.0 com QoS 0/1/2 e assinaturas compartilhadas, mais clientes prontos para AWS IoT Core e Azure IoT Hub.

Componentes IoT →

Vídeo WebRTC

Mídia e canais de dados peer-to-peer com STUN, TURN e ICE integrados, mais um servidor de sinalização que você mesmo hospeda.

WebRTC e P2P →

Agentes de IA (MCP)

Exponha suas próprias ferramentas, prompts e recursos para o ChatGPT e o Claude através do Model Context Protocol, com cliente e servidor inclusos.

Componentes MCP →

Serviços HTTP/2 e HTTP/3

Sirva HTTPS, WebSocket e HTTP/2 na mesma porta, com multiplexação, compressão de cabeçalhos e server push, além de HTTP/3 sobre QUIC.

Componentes HTTP →
Produção

Por que ele aguenta a carga.

Conexões de longa duração, criptografia por padrão, auto-recuperação sob instabilidade. As partes que decidem se o seu servidor sobrevive à manhã de segunda-feira.

Servidor multithread com IOCP e EPOLL

O servidor aceita conexões em portas de conclusão de E/S no Windows e em epoll no Linux, distribuindo o trabalho em um pool de threads em vez de uma thread por socket. É isso que mantém mais de 10.000 conexões ativas em um único processo de servidor.

Componentes de escalabilidade →

TLS 1.2 e 1.3, OpenSSL 3 ou SChannel

Escolha o backend TLS que se encaixa na implantação. O OpenSSL 3 oferece o mesmo comportamento no Windows, Linux, macOS, iOS e Android. O SChannel nativo usa o repositório de certificados do Windows, então não há DLLs do OpenSSL para distribuir.

TLS e certificados →

Reconexão automática WatchDog e HeartBeat

O HeartBeat envia quadros de ping periódicos para que pares inativos sejam detectados em vez de permanecerem pendurados. O WatchDog reconecta automaticamente um cliente desconectado, com intervalos e tentativas configuráveis, para que uma oscilação de rede não vire uma indisponibilidade.

Componente cliente →

Compressão por mensagem, RFC 7692

Ative a extensão permessage-deflate e as cargas JSON repetitivas encolhem na rede, negociadas durante o handshake com qualquer par compatível. Quadros binários, fragmentação e validação de Unicode ficam por conta da biblioteca.

Visão geral dos recursos →
Edições e pacotes

Standard, Professional e Enterprise.

Cada edição inclui tudo o que existe na anterior, com o código-fonte completo para Delphi e C++ Builder e um ano de atualizações. O pacote All-Access cobre toda a suíte eSeGeCe.

Standard

Todos os componentes cliente: clientes WebSocket, MQTT, AMQP, STOMP e WAMP, mais de 20 clientes de API de corretoras e de mensageria, clientes AWS IoT e Azure IoT, clientes OAuth2 e JWT.

€380 / desenvolvedor

Professional

Standard mais todos os servidores: servidores WebSocket e WebSocket + HTTP, servidores Firewall, LoadBalancer e Proxy, servidor WebRTC, servidores Dataset, Files e Presence, DataSnap WebBrokerBridge.

€529 / desenvolvedor

Enterprise

Professional mais o cliente HTTP/2 nativo, os servidores de alto desempenho HTTP.SYS, IOCP e EPOLL, todos os componentes de IA com MCP, servidores OAuth2, JWT e WebAuthn, TURN, ICE e RTCPeerConnection, TLS 1.3, ALPN e DTLS.

€699 / desenvolvedor

Para .NET há as edições Community, Professional e Enterprise, do .NET Framework 2.0 ao .NET 10.

Compare edições e preços

Pacotes complementares

Amplie o sgcWebSockets Enterprise com um motor dedicado de transporte ou de mídia.

Pacotes individuais

Compre apenas a parte do sgcWebSockets de que você precisa. A maioria dos pacotes individuais é autônoma e inclui o runtime sgcWebSockets Core, com código-fonte completo.

DEPOIMENTOS

O que dizem os desenvolvedores.

Confiado por desenvolvedores Delphi, C++ Builder, Lazarus e .NET que constroem aplicativos em tempo real ao redor do mundo.

O sgcWebSockets é incrível e o suporte de vocês é o melhor!
Christian Meyer Fundador & CTO
A biblioteca sgcWebSockets de vocês é muito útil e fácil de configurar. Continuem com o ótimo trabalho!
Simone Moretti Desenvolvedor Delphi
Muito obrigado pela ajuda e pelo suporte, eu adoro os componentes de vocês.
Mark Steinfeld CTO

Tempo real, no seu aplicativo, hoje.

Baixe a avaliação e execute um servidor WebSocket na sua própria máquina em minutos. Código-fonte completo, distribuição sem royalties, Delphi 7 a RAD Studio 13 e .NET 2.0 a .NET 10.

Últimas do blog

Ver todas as publicações →

Você está vendo a visão sgcWebSockets da eSeGeCe.

Mostre outro ângulo →
Garantia de reembolso de 30 diasNão ficou satisfeito? Solicite o reembolso total em até 30 dias após a compra. Ver política de reembolso