eSeGeCe — Componenti di comunicazione enterprise per Delphi e .NET
IN EVIDENZA · sgcWebSockets

Metti in produzione un server WebSocket in Delphi, oggi pomeriggio

Client e server conformi a RFC 6455, oltre 10.000 connessioni concorrenti, TLS 1.3, IOCP su Windows ed EPOLL su Linux. Da Delphi 7 a RAD Studio 13, da .NET 2.0 a .NET 9, un'unica API su ogni target.

  • Conforme a RFC 6455
  • TLS 1.2 e 1.3
  • IOCP · EPOLL
  • Sorgente completo, senza royalty
EchoServer.pas
// uses sgcWebSocket, sgcWebSocket_Classes; WSServer := TsgcWebSocketServer.Create(Self); WSServer.Port := 5000; WSServer.OnMessage := WSServerMessage; WSServer.Active := True; procedure TForm1.WSServerMessage( Connection: TsgcWSConnection; const Text: string); begin Connection.WriteData('echo: ' + Text); end;

Un frame in ingresso, un broadcast in uscita verso ogni client del canale.

10.000+ Connessioni concorrenti Pool di thread IOCP su Windows, EPOLL su Linux, un solo processo server.
< 1 ms Latenza dei frame Framing zero-copy su localhost, con per-message deflate pronto all'uso.
761+ Componenti Client, server, gestori di protocollo e wrapper API in un unico albero di sorgenti.
30+ Integrazioni API Exchange crypto, servizi cloud, piattaforme di messaggistica e provider di IA.

sgcWebSockets In evidenza
WebSocket, HTTP/2, HTTP/3, MQTT, AMQP, STOMP, WAMP, SSE, WebRTC e IA, per Delphi, C++Builder, Lazarus e .NET.

Esplora la libreria Vedi i prezzi

Connetti, sottoscrivi, trasmetti

Lo stesso compito pub/sub scritto con gli stessi nomi di componenti in Delphi, C++Builder e C#. Impari l'API una volta e la riusi su ogni target su cui rilasci.

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;

Il lato server è l'immagine speculare. TsgcWebSocketServer.Broadcast(Text, 'orders') distribuisce lo stesso payload a ogni sottoscrittore del canale.

Tutti i protocolli wire che il tuo stack già parla

Implementazioni native di client e server, non sottili wrapper su un motore browser. Combina i protocolli in un'unica applicazione e condividi un solo pool di connessioni.

WebSocket · RFC 6455 HTTP/2 HTTP/3 · QUIC MQTT 3.1.1 e 5.0 AMQP 0.9.1 e 1.0 STOMP WAMP v2 SSE WebRTC CoAP

Ecosistemi con cui si integra

Client e adattatori pronti all'uso per i broker, gli hub e i servizi che il tuo team infrastrutturale già gestisce.

Socket.IO v4 SignalR Core Pusher Channels RabbitMQ HiveMQ Mosquitto EMQX AWS IoT Core Azure IoT Hub ActiveMQ IBM MQ

Riferimento completo ai protocolli: protocolli di sgcWebSockets.

Perché regge sotto carico

Connessioni di lunga durata, crittografate per default, auto-riparanti sotto stress. Le parti che decidono se il tuo server sopravvive al lunedì mattina.

Server multithread IOCP ed EPOLL

È il server ad accettare le connessioni sulle I/O completion port su Windows e su epoll su Linux, distribuendo il lavoro su un pool di thread invece di un thread per socket. È questo che evita che oltre 10.000 connessioni attive su un singolo processo collassino nel context switching.

Componenti di scalabilità →

TLS 1.2 e 1.3, OpenSSL 3 o SChannel

Scegli il backend TLS più adatto alla distribuzione. OpenSSL 3 offre lo stesso comportamento su Windows, Linux, macOS, iOS e Android. SChannel nativo usa l'archivio certificati di Windows, quindi non ci sono DLL OpenSSL da distribuire o aggiornare.

TLS e certificati →

Riconnessione automatica WatchDog e HeartBeat

HeartBeat invia frame ping periodici, così i peer morti vengono rilevati invece di restare appesi. WatchDog riconnette automaticamente un client caduto con intervalli e tentativi configurabili, quindi un blip di rete non diventa un riavvio dell'applicazione.

Componente client →

Compressione per messaggio, RFC 7692

Attiva l'estensione permessage-deflate e i payload JSON ripetitivi si riducono sul wire, negoziata durante l'handshake con qualsiasi peer conforme. Frame binari, frammentazione e validazione Unicode sono tutti gestiti dal livello di framing.

Panoramica delle funzionalità →

Dai trading desk agli agenti IA

Ognuno di questi si basa sugli stessi componenti client e server che installi oggi nel tuo IDE.

Chat in tempo reale su larga scala

Connessioni persistenti, presenza, canali con nome e messaggistica binaria, con un server multithread progettato per migliaia di utenti concorrenti.

Comunicazione in tempo reale →

Trading algoritmico

Client di streaming pronti all'uso per 14 exchange crypto, con TLS, frame binari e riconnessione automatica sul feed di dati di mercato.

API degli exchange →

Telemetria IoT

MQTT 3.1.1 e 5.0 con QoS 0/1/2, sottoscrizioni condivise e CoAP, più client chiavi in mano per AWS IoT Core e Azure IoT Hub.

Componenti IoT →

Video WebRTC

Media e data channel peer-to-peer con STUN, TURN e ICE integrati, e un server di signalling che ospiti tu stesso.

WebRTC e P2P →

Agenti IA (MCP)

Esponi i tuoi strumenti, prompt e risorse a ChatGPT e Claude tramite il Model Context Protocol, client e server entrambi inclusi.

Componenti MCP →

Servizi HTTP/2 e HTTP/3

Servi HTTPS, WebSocket e HTTP/2 dalla stessa porta, con multiplexing, compressione degli header e server push, e HTTP/3 su QUIC.

Componenti HTTP →

Sei librerie, un unico abbonamento

sgcWebSockets è il prodotto di punta. Il resto della suite copre la UI, gli SDK, le firme e i socket sottostanti.

sgcWebSockets

WebSocket, HTTP/2, HTTP/3, MQTT, AMQP, WebRTC, IA e oltre 30 integrazioni API per Delphi, C++Builder, Lazarus e .NET.

Scopri di più →

sgcHTML

Crea interfacce web full-stack in Delphi e .NET. Componenti HTML lato server, aggiornamenti WebSocket in tempo reale e interattività htmx.

Scopri di più →

sgcOpenAPI

Parser OpenAPI 3.x, generatore di SDK Pascal e server OpenAPI, più oltre 1.195 SDK precompilati per AWS, Azure, Google Cloud e Microsoft Graph.

Scopri di più →

sgcSign

Firme di documenti (XAdES, PAdES, CAdES, ASiC) e firma del codice (Authenticode, ClickOnce, NuGet, VSIX), con 10 provider di chiavi e 21 profili per paesi UE.

Scopri di più →

sgcBiometrics

Windows Hello, sensori di impronte digitali e riconoscimento facciale per Delphi e C++Builder, basati sul Windows Biometric Framework.

Scopri di più →

sgcIndy

Una suite Indy TCP/IP potenziata con TLS moderno, IPv6 e supporto esteso per i protocolli, da Delphi 7 a RAD Studio 13.

Scopri di più →

Cosa dicono gli sviluppatori

Scelta da sviluppatori Delphi, C++ Builder, Lazarus e .NET che costruiscono applicazioni in tempo reale in tutto il mondo.

sgcWebSockets è straordinario e il vostro supporto è il migliore!
Christian Meyer Fondatore e CTO
La vostra libreria sgcWebSockets è molto utile e semplice da configurare. Continuate così!
Simone Moretti Sviluppatore Delphi
Grazie mille per il vostro aiuto e supporto, adoro i vostri componenti.
Mark Steinfeld CTO

Questa è la vista Real-Time di eSeGeCe.

Mostrami un altro punto di vista →
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso

Tempo reale, nella tua app, oggi

Scarica la versione di prova gratuita e avvia un server WebSocket sulla tua macchina in pochi minuti. Sorgente completo, distribuzione senza royalty, da Delphi 7 a RAD Studio 13 e da .NET 2.0 a .NET 9.