Delphi & C++ Builder WebSocket-Bibliotheken — Vergleichsleitfaden

Eine neutrale, mit Quellen belegte Übersicht der WebSocket-Bibliotheken, die Delphi- und C++ Builder-Entwicklern 2026 zur Verfügung stehen: sgcWebSockets, Indy, ICS, TMS FNC WebSocket, mORMot 2 und eigenständige MQTT-Bibliotheken. Jede Aussage zu Features verlinkt auf die eigene Dokumentation des Projekts.

Sechs Bibliotheken, die Entwickler wirklich nutzen

Eine Zusammenfassung jeder Bibliothek in einem Absatz, mit Link zur offiziellen Dokumentation. Der detaillierte Vergleich folgt in der Matrix darunter.

Indy (Internet Direct)

Indy Working Group / Remy Lebeau · BSD / MPL (open source)

Open-Source-TCP-/UDP-/Raw-Socket-Bibliothek, die jeder aktuellen RAD Studio-Installation beiliegt. Bringt 120+ höhere Protokoll-Clients und -Server mit (HTTP, SMTP, POP3, IMAP, FTP, NNTP, IRC und mehr), enthält aber keinen nativen WebSocket-Client oder -Server — Anwender ergänzen typischerweise ein Drittanbieter-WebSocket-Add-on auf Basis von TIdHTTP / TIdHTTPServer.

Official page

ICS (Internet Component Suite)

François Piette / Magenta Systems Ltd · Free, source-available

Open-Source-Networking-Bibliothek für Delphi/C++ Builder von François Piette. WebSocket-Unterstützung wurde in ICS V9.0 als TSslWebSocketCli (in OverbyteIcsWebSocketCli) sowie eine Server-Klasse THttpWSSrvConn auf dem bestehenden ICS-Webserver hinzugefügt.

Official page

TMS FNC WebSocket / TMS Sparkle

TMS Software · Commercial

TMS Software bietet zwei relevante Produkte. TMS Sparkle ist ein plattformübergreifendes HTTP-Client-/Server-Framework (intern auch von TMS XData und TMS RemoteDB genutzt). TMS FNC WebSocket ist ein eigenständiges VCL + FireMonkey WebSocket-Client-/Server-Paar, das RFC 6455 implementiert.

Official page

mORMot 2

Arnaud Bouchez / Synopse · MPL / GPL / LGPL (open source)

Open-Source-SOA-/ORM-/MVC-Framework für Object Pascal mit asynchronem HTTP- und WebSocket-Server, REST/JSON, OpenAPI/Swagger, LDAP, DNS, ACME und Kryptografie-Primitiven. Delphi-Server-Units zielen ausschließlich auf Windows ab; FPC (Free Pascal) baut denselben Server-Code für Linux, BSD und macOS. Mobile Clients werden auf allen Plattformen unterstützt.

Official page

Stand-alone MQTT-only libraries

Various community authors · Varies (typically MIT / BSD / Apache)

Auf GitHub gibt es etliche zweckgebundene MQTT-Clients für Delphi. Typischerweise decken sie nur die MQTT 3.1.1-Client-Seite ab, enthalten keinen MQTT 5.0-Server, kein AMQP, STOMP oder WAMP und werden von einzelnen Autoren gepflegt.

Official page

Funktionsvergleich nebeneinander

A check () means the project documents native support. A dash () means the project does not provide it natively. A tilde (~) means partial / via add-on / not explicitly documented — see the Sources section for what we could verify.

Protokolle, Transport, Lizenzierung

16 rows
Funktion sgcWebSockets Indy (Internet Direct) ICS (Internet Component Suite) TMS FNC WebSocket / TMS Sparkle mORMot 2 Stand-alone MQTT-only libraries
WebSocket-Client RFC 6455-Client ~
WebSocket-Server RFC 6455-Server ~
TLS 1.3 TLS 1.3 wird vom mitgelieferten Transport unterstützt ~ ~
HTTP/2-Client Nativer HTTP/2-Client (RFC 7540/9113) ~
MQTT MQTT 3.1.1-/5.0-Client integriert ~ ~
AMQP AMQP 0.9.1-/1.0-Client integriert
STOMP STOMP 1.0-/1.2-Client integriert
WAMP WAMP v1-/v2-Client integriert
Server-Push/Streaming Dauerhafte Push- oder Streaming-Verbindung ~ ~ ~
Auto-Reconnect Integrierter Client-Auto-Reconnect/Watchdog ~ ~ ~ ~
per-message-deflate (RFC 7692) WebSocket-Kompressionserweiterung ~ ~ ~
Plattformübergreifend Win / macOS / Linux / iOS / Android ~ ~
Kommerzielle Nutzung erlaubt Lizenz erlaubt kommerzielle Closed-Source-Nutzung
Quellcode verfügbar Bibliotheks-Quellcode ist für Entwickler einsehbar
Aktive Pflege Release oder getaggte Aktivität in den letzten 12–18 Monaten ~ ~
Lizenzmodell Lizenztyp Commercial BSD / MPL (open source) Free, source-available Commercial MPL / GPL / LGPL (open source) Varies (typically MIT / BSD / Apache)
Dokumentierte native Unterstützung Nicht nativ vorhanden ~ Teilweise / über Add-on / nicht verifiziert

Wechsel zu sgcWebSockets — was anders ist

Kurze Hinweise zu API- und Feature-Unterschieden, wenn du von einer der obigen Bibliotheken wechselst. Nicht konfrontativ — nur die praktische Zuordnung.

Wechsel von Indy (Internet Direct)

Indy liefert dir die rohe HTTP-/TCP-Verrohrung; sgcWebSockets bringt WebSocket-Framing, Ping/Pong, Auto-Reconnect, Subprotokolle (MQTT/AMQP/STOMP/WAMP) und per-message-deflate integriert mit. Wenn du heute einen Indy-basierten HTTP-Server hast, bietet sgcWebSockets einen separaten TsgcWebSocketHTTPServer statt ein Indy-Plug-in — bestehende HTTP-Routen müssen unter dem sgc-Server neu implementiert werden oder beide Server laufen parallel auf unterschiedlichen Ports.

Wechsel von ICS (Internet Component Suite)

Beide Bibliotheken bieten einen WebSocket-Client und einen WebSocket-über-HTTP-Server. Die genannten Messaging-Protokolle (MQTT, AMQP, STOMP, WAMP) sowie die AI/LLM- und Exchange-API-Clients gibt es nur in sgcWebSockets. Wenn du derzeit einen ICS-Webserver mit WebSocket-Routen betreibst, bietet sgcWebSockets TsgcWebSocketHTTPServer als einsetzbaren HTTP+WS-Host, allerdings mit einer anderen API zur Routenregistrierung.

Wechsel von TMS FNC WebSocket / TMS Sparkle

sgcWebSockets und TMS FNC WebSocket implementieren beide RFC 6455-Client und -Server. Migriere, indem du die Komponentenklasse austauschst und Ereignisse neu verdrahtest. Die darüber liegenden Protokollschichten (MQTT, AMQP, STOMP, WAMP), der HTTP/2-Client und -Server sowie die 30+ Drittanbieter-API-Integrationen sind sgcWebSockets-exklusiv. Nutzt du TMS MQTT separat, bündelt sgcWebSockets MQTT in dieselbe Suite.

Wechsel von mORMot 2

mORMot 2 verpackt WebSocket innerhalb seiner SOA-Schicht; sgcWebSockets liefert eine eigenständige WebSocket-/HTTP/2-/MQTT-/AMQP-/STOMP-/WAMP-Komponente, die du in jedes Delphi-Projekt einbauen kannst. Nutzt deine Anwendung die ORM- und SOA-Features von mORMot 2, bedeutet ein Wechsel zu sgcWebSockets, dass du die SOA-Schicht neu implementieren musst; wenn du mORMot 2 nur für den WebSocket-Transport genutzt hast, ist sgcWebSockets ein näherer 1:1-Tausch.

Wechsel von eigenständigen MQTT-Bibliotheken

Wenn du derzeit eine eigenständige MQTT-Bibliothek nutzt und beginnst, WebSocket, HTTP/2, AMQP oder AI/LLM-API-Clients zu ergänzen, bündelt sgcWebSockets all das in einer Suite, mit einer Lizenz und einem Update-Kanal.

Jede Aussage, verlinkt

Jede Zelle in der Matrix oben verweist auf eine dieser offiziellen Dokumentationsseiten, Repositories oder Release Notes. Alle URLs wurden zum Zeitpunkt der Erstellung per HEAD geprüft.

QuelleURL
sgcWebSockets — product pagehttps://www.esegece.com/products/websockets/
sgcWebSockets — Delphi feature matrixhttps://www.esegece.com/products/websockets/features/feature-matrix-delphi/
Indy — project homepage (indyproject.org)https://www.indyproject.org/
Indy — GitHub repository (IndySockets/Indy)https://github.com/IndySockets/Indy
Indy — releases (latest tagged 10.6.3.14)https://github.com/IndySockets/Indy/releases
ICS — V9.0 release notes (WebSocket support introduced)https://wiki.overbyte.eu/wiki/index.php/ICS_V9.0
ICS — V9.6 release notes (TLS 1.3 / PQC)https://wiki.overbyte.eu/wiki/index.php/ICS_V9.6
ICS — download page (latest stable)https://wiki.overbyte.eu/wiki/index.php/ICS_Download
TMS Sparkle — product pagehttps://www.tmssoftware.com/site/sparkle.asp
TMS FNC WebSocket — product pagehttps://www.tmssoftware.com/site/tmsfncwebsocket.asp
mORMot 2 — GitHub repository (synopse/mORMot2)https://github.com/synopse/mORMot2
mORMot 2 — README (protocol list, supported targets)https://github.com/synopse/mORMot2/blob/master/README.md
mORMot 2 — releases (v2.4 stable)https://github.com/synopse/mORMot2/releases
Synopse forum (Object Pascal SOA / ORM)https://synopse.info/
GitHub topic: delphi-mqtt (community single-purpose MQTT clients)https://github.com/topics/delphi-mqtt
RFC 6455 — The WebSocket Protocolhttps://datatracker.ietf.org/doc/html/rfc6455
RFC 7692 — Compression Extensions for WebSocket (per-message-deflate)https://datatracker.ietf.org/doc/html/rfc7692

sgcWebSockets ausprobieren

Lade die kostenlose Trial-Edition herunter und benchmarke sgcWebSockets gegen deine aktuelle Bibliothek mit deiner eigenen Anwendung.