Panoramica delle funzionalità

sgcWebSockets è una libreria multipiattaforma che abilita la comunicazione client-server in tempo reale. Realizzata interamente in Delphi, supporta Windows, Linux, macOS, iOS e Android con prestazioni ottimizzate per applicazioni a bassa latenza e alto throughput.

Supporto di piattaforme e protocolli

Una base solida per ogni applicazione in tempo reale.

Multipiattaforma

Windows, Linux 64-bit, macOS, iOS e Android. Supporto completo di VCL e FireMonkey da un'unica base di codice.

Server multithread

Server WebSocket conforme a RFC 6455 con IOCP su Windows ed EPOLL su Linux per massimizzare le connessioni concorrenti.

SSL/TLS 1.2 e 1.3

Crittografia completa su server e client con backend OpenSSL e SChannel. Gestione dei certificati integrata.

Binario e Unicode

Supporto completo per frame binari e messaggi di testo Unicode. Trasferisci nativamente file, immagini e dati strutturati.

Compressione dei messaggi

L'estensione PerMessage-Deflate riduce la banda fino all'80% con livelli di compressione configurabili.

Server multi-protocollo

Connessioni WebSocket, HTTP/1.1 e HTTP/2.0 sulla stessa porta. Niente più server separati.

Connessione e messaggistica

Meccanismi integrati per mantenere sane le connessioni e consegnare i messaggi.

HeartBeat

Ping/pong automatici a intervalli configurabili. Rileva tempestivamente le connessioni morte e le mantiene attive attraverso i firewall.

WatchDog

Riconnessione automatica per i client e riavvio automatico per i server dopo disconnessioni impreviste. Recupero senza interruzioni.

Qualità del servizio

Tre livelli di QoS: at-most-once, at-least-once ed exactly-once per ogni requisito di affidabilità.

Code dei messaggi

Memorizzazione persistente dei messaggi con livelli configurabili. Riproduci i messaggi persi dopo la riconnessione.

Transazioni

Metodi StartTransaction, Commit e Rollback per operazioni multi-step atomiche.

Limitazione della banda

Limita i bit al secondo per connessione. Previeni gli abusi di banda e garantisci un'allocazione equa delle risorse.

Metodi di autenticazione

Diverse strategie per mettere al sicuro le tue connessioni WebSocket.

Autenticazione Basic

Autenticazione HTTP Basic standard per la validazione delle credenziali username/password.

OAuth2

Supporto OAuth2 completo per client e server. Integrazione con identity provider per l'autenticazione basata su token.

Autenticazione di sessione e URL

Gestione delle sessioni lato server e autenticazione basata su token tramite parametri URL per client browser.

Esempio di guida rapida

Crea un server WebSocket con poche righe di codice Delphi.

uses
  sgcWebSocket_Server, sgcWebSocket_Types;

var
  WSServer: TsgcWebSocketHTTPServer;

procedure TForm1.FormCreate(Sender: TObject);
begin
  WSServer := TsgcWebSocketHTTPServer.Create(nil);
  WSServer.Port := 8080;
  WSServer.SSL := True;
  WSServer.OnMessage := OnMessage;
  WSServer.Active := True;
end;

procedure TForm1.OnMessage(Connection: TsgcWSConnection;
  const aText: string);
begin
  // Rinvia il messaggio al client
  Connection.WriteData(aText);
end;

Pronto a iniziare?

Scarica la versione di prova gratuita e inizia a costruire applicazioni in tempo reale in pochi minuti.