Delphi Cross Platformal Socket Communication Library
Autor: Winddriver ([email protected])
Englisch
Spenden
Wenn Sie dieses Projekt für Sie nützlich finden, sollten Sie den Autor spenden und unterstützen, um weiter zu aktualisieren


Datensätze aktualisieren
2023.09.18
- Unterstützt FPC 3.3.1
- Support OpenSSL 3.x
- Der HTTP -Client ICROSSHTTPCLIENT wurde hinzugefügt (unterstützt Gzip/Deflate -komprimiertes Senden).
- WebSocket Client IcrossWebsocket hinzugefügt
- Der HTTP -Server unterstützt das Sammeln von GZIP/Defloper -Komprimierungsdaten
- Teilcode -Rekonstruktion
- Einige kleinere Probleme behoben
2020.07.07
- ICROSSHTTPSERVER UND ICROSSWebsocketserver unterstützen sowohl HTTP als auch HTTPS
Vielen Dank an Xlnron für Ihre Hilfe
2019.02.17
- Festspeicherlecks, die durch TioEventThread verursacht werden können
Vielen Dank an Viniciusfbb für die Entdeckung und Behebung dieses Problems
- Fixe Speicherlecks durch [schwach] verursacht
Bei Verwendung mit einer Speicherverwaltungsbibliothek von Drittanbietern tritt ein Speicherleck auf. Robertodellapasqua entdeckte dieses Problem und schließlich fand PONY5551 die Ursache des Problems. Vielen Dank! Dies sollte ein Fehler in Delphis [schwacher] interner Implementierung sein, und das Problem wurde gelöst, nachdem [schwach] durch [unsicher] ersetzt wurde.
2019.01.15
- MBETTLS -Unterstützung hinzugefügt
- Aktivieren Sie die Methode von MbedTLS: Schalten Sie die beiden Kompilierungsschalter ein __cross_SSL__ und __mbed_TLS__ in den Projektkompilierungsoptionen und fügen Sie das Verzeichnis unter MbedoBJ zum Bibliotheksweg der entsprechenden Plattform hinzu
- Derzeit ist die Unterstützung von MbedTLS nicht stabil genug. Verwenden Sie sie bitte nicht in Produktionsumgebungen
2017.08.22
- Code Refactoring, es wurden viele Änderungen vorgenommen, siehe den Quellcode für Details
- Es wurden mehrere neue Schnittstellen hinzugefügt, siehe Demos für die Verwendung für die Verwendung
- Icrossocket
- Icrossslsocket
- Icrossserver
- IcrossslServer
Merkmal
Verwenden Sie verschiedene IO -Modelle für verschiedene Plattformen:
Fenster
FreeBSD (macOSX, iOS ...)
Linux (Linux, Android ...)
Unterstützt extrem hohe Parallelität
Kann mehr als 100.000 gleichzeitige Zahlen ausgeführt werden. Sie müssen die Registrierung ändern, um die maximale Standardzahl der Ports anzupassen
Nach vorläufigen Tests beträgt die Testumgebung OSX 10.9.5 in der virtuellen Maschine. Auch wenn das Systemhandlimit geändert wird, kann es höchstens mehr als 32.000 gleichzeitige Verbindungen öffnen. Möglicherweise kann die OSX -Serverversion eine höhere Parallelität unterstützen.
Unterstützt IPv4 und IPv6 gleichzeitig
Nullspeicherkopie
Bestand den Test
- Fenster
- OSX
- iOS
- Android
- Linux
Empfohlene Entwicklungsumgebung
- Verwenden Sie bitte Delphi 10.2 Tokio und höher, um die volle plattformübergreifende Funktionalität zu spielen
- Die Mindestanforderung besteht darin, die Delphi -Version von generischen und anonymen Funktionen zu unterstützen. Ich bin nicht sehr klar, welche Version generische und anonyme Funktionen unterstützt.
- Verwenden Sie am besten die FPC -Version 3.3.1 und höher
Einige Test -Screenshots
Https Benchmark 
HTTP-Server (Linux-Aarch64) 
HTTP-Server (Linux-loongarch64) 
HTTP-Client (Linux-Aarch64) 
HTTP-Client (Linux-loongarch64) 
WebSocket-Server (Linux-Aarch64) 
WebSocket-Server (Linux-Loongarch64) 
WebSocket Client (Linux-Aarch64) 
WebSocket-Client (Linux-loongarch64) 
HTTP (Server ist Ubuntu 16.04 Desktop)
HTTPS (Server ist Ubuntu 16.04 Desktop)