https://sourceforge.net/p/synalist/code/HEAD/tree/trunk/
http://www.ararat.cz/synapse/doku.php/download
Ararat Synapse Code SynaSer serial library Synapse TCP/IP and serial library Winsock
http://visualsynapse.sourceforge.net/
VisualSynapse TCP/IP Delphi components based on Synapse.
http://synapse.ararat.cz/files/contrib/
Contributed Download Area - various samples and others.
http://synapse.ararat.cz/files/crypt/
Crypting libraries for SSL/TLS/SSH in Synapse
http://synapse.ararat.cz/files/W95ws2setup.exe
Winsock2 support for Windows95
http://www.wireshark.org/
Wireshark excellent tool for analyse and debugging of network communication.
https://www.nsoftware.com
https://www.nsoftware.com/products/
Internet Communications and Security
voipobjects delphi-iocp-library voipobjects delphi-iocp-library http://voipobjects.com/
https://github.com/tondrej/iocp-delphi
Windows IO Completion Port wrapper class for Delphi and Free Pascal
compilers: Delphi 7 or higher, Free Pascal 3.0.4 or higher
targets: Windows XP/Windows Server 2003 or higher, both 32 and 64-bit
Fiber and IOCP API siqiyi/libfiber The high performance coroutine library
GitHub iqiyi libfiber OS platfroms including Linux, FreeBSD, MacOS, and Windows, which supports
select, poll, epoll, kqueue, iocp, and even Windows GUI messages
Using beamer overlays with forest generated trees
HPScktSrvr at http://www.torry.net/ with the code pages.php?id= and a number sequence of 220#939383
Indy, ICS, Synapse, and Clever InetSuite,
ICS - The Internet Component Suite
iocpengine iocpengine - I/O Completion Port Engine for Delphi
TISAPIThreadPool; TIstringHelper; TIWPaintHandler. TIWPaintHandlerDsn. TIWPaintHandlerButton; TIWPaintHandlerCheckBox; TIWPaintHandlerComboBox ...
HttpSys2WebServer from DWScript use an IOCP-based server.
https://torry.net/components/internet/sockets/#939383
https://habr.com/ru/articles/145140/
Windows Sockets, IOCP и Delphi
//////////////////////////////////////////////////////////////////////////////////////////////////////
Создание списков сокетов разных типов.
Инициализация подсистемы сокетов.
Создание очереди сообщений.
Создание пула для обработки очереди.
Создание событий для сокетов.
Создание потоков отслеживающих сокетные события( например подключение нового клиента)
procedure Init;
var
WSAData: TWsaData;
i: Integer;
begin
gClients := TProtoStore.Create;
gListeners := TProtoStore.Create;
gServerClients := TProtoStore.Create;
if WSAStartup(MAKEWORD(2, 2), WSAData) <> 0 then
raise IOCPClientException.Create(sErrorInit_WSAtartup);
gIOCP := CreateIoCompletionPort(INVALID_HANDLE_VALUE, 0, 0, CPUCount * 2);
if gIOCP = INVALID_HANDLE_VALUE then
raise IOCPClientException.Create(sErrorInit_CreateIoCompletionPort);
for i := 1 to CPUCount * 2 do
begin
SetLength(gWorkers, Length(gWorkers) + 1);
gWorkers[Length(gWorkers) - 1] := TWorkerThread.Create();
end;
gListenerAcceptEvent := WSACreateEvent;
if gListenerAcceptEvent = WSA_INVALID_EVENT then
raise IOCPClientException.Create(sErrorInit_WSACreateEvent);
gServerClientsCloseEvent := WSACreateEvent;
if gServerClientsCloseEvent = WSA_INVALID_EVENT then
raise IOCPClientException.Create(sErrorInit_WSACreateEvent);
gClisentsConnectAndCloseEvents := WSACreateEvent;
if gClisentsConnectAndCloseEvents = WSA_INVALID_EVENT then
raise IOCPClientException.Create(sErrorInit_WSACreateEvent);
gClientSocketEventThread := TSocketEventThread.Create
(gClisentsConnectAndCloseEvents, gClients, ET_EVENT_SIGNALED);
gClientSocketEventThread.Start;
gServerClientsSocketEventThread := TSocketEventThread.Create
(gServerClientsCloseEvent, gServerClients, ET_EVENT_SIGNALED);
gServerClientsSocketEventThread.Start;
gServerSocketEventThread := TSocketEventThread.Create(gListenerAcceptEvent,
gListeners, ET_EVENT_SIGNALED);
gServerSocketEventThread.Start;
end;
2023年10月26日 星期四
delphi iocp socket tcpip network
diocp DIOCP 无锁队列 ZeroMQ QWorkers uJobPusher RabbitMQ websocket network
https://www.opensourceagenda.com/projects/zserver4d
内置抗量子密码支持 https://en.wikipedia.org/wiki/SHA-3 支持了5大美国国家标准技术研究所(NIST)高级加密标准算法 rc6加密,通讯协议支持 https://en.wikipedia.org/wiki/RC6 Twofish加密,通讯协议支持 https://en.wikipedia.org/wiki/Twofish Serpent加密,通讯协议支持 https://en.wikipedia.org/wiki/Serpent_(cipher) Mars加密,通讯协议支持 https://en.wikipedia.org/wiki/MARS_(cipher) Rijndael加密,通讯协议支持 https://en.wikipedia.org/wiki/Advanced_Encryption_Standard
https://www.nuget.org/packages/SimpleMsgPack
https://www.twblogs.net/a/5ef0629c33cbe858769e7fee
zmq_strerror - 台部落
https://www.oschina.net/project/widgets/_project_list?company=0&tag=12&lang=0&os=156&sort=favorite&recommend=false&cn=false&weekly=false&p=150&type=ajax
http://m.mamicode.com/info-detail-1515096.html
DIOCP之DEMO-登陆验证设计(二)-码迷移动版-m.mamicode.com
http://bbs.2ccc.com/topic.asp?topicid=460182
DIOCP开源项目-DIOCP3
http://www.cnblogs.com/DKSoft/p/3889125.html
目前diocp3的开源地址 https://github.com/ymofen/diocp3
https://code.google.com/archive/p/diocp/source/default/source?page=33
Google Code Archive - Long-term storage for Google Code Project Hosting.
https://www.cnblogs.com/hnxxcxg/category/1168706.html
DIOCP TDiocpCoderTcpServer异步任务投递队列TDiocpCoderTcpServer异步任务投递队列
delphi中间件 TDiocpCoderTcpServer数据序列和还原 TDiocpCoderTcpServer数据序列和还原
http://wedelphi.com/f/4/
DIOCP | WeDelphi Forum
https://gitee.com/ymofen/diocp-v5
diocp-v5: iocp, websocket, delphi,http
https://github.com/yangyxd/YxdIOCP
yangyxd/YxdIOCP: Delphi Windows IOCP 通讯模型封装,基于DIOCP。YxdIocp包含有支持大并发的TCP服务组件、HTTP服务组件、UDP服务组件、WebSocket服务组件,和TCP、UDP等基础客户端组件。
https://github.com/ymofen/diocp-v5
diocp DIOCP 无锁队列 ZeroMQ QWorkers
uJobPusher RabbitMQ websocket
diocp websocket DIOCP 开源地址 DIOCP-v5开源项目地址https://github.com ... WebSocket + Spring Security + SpringData-Jpa + MySql工程结构说明java .
webflux · GitHub Topics
flex开源项目地址 https://github.com/flex-users/flexlib
2023年10月12日 星期四
Windows IOCP Linux EPOLL Performance Comparison
https://news.ycombinator.com/item?id=19520953
IOCP is particularly strong when you compare it to select, poll, epoll, kpoll, a... | Hacker News
https://pt.slideshare.net/sm9kr/iocp-vs-epoll-perfor
Windows IOCP vs Linux EPOLL Performance Comparison | PPT
Epoll Kernel Performance Improvements
Linux EPOLL Performance Comparison
linux epoll technique Epoll in Linux Device Driver
https://zh.wikipedia.org/zh-tw/Epoll
2017年9月21日 星期四
delphi Socket Components
Assembly
|
Unit
|
Dependence
|
Pattern
|
Model
|
WebApp/CGI
|
sockapp.pas
|
Indy
|
Blocking or non blocking
|
select
|
Indy
|
Blocking or non blocking
|
select
| ||
ICS
|
OverbyteIcsWSocket.pas
|
Non blocking
|
WMAsyncSelect
| |
TTcpServer/TTcpClient
|
sockets.pas
|
Blocking or non blocking
|
Select
| |
RealThinClient
|
The ICS variant
|
Non blocking
|
wsaasyncselect
| |
synapse
|
blckSock.pas
|
Blocking or non blocking
|
Select
| |
TServerSocket
TClientSocket
|
ScktComp.pas
|
Blocking or non blocking
|
WSAAsyncSelect
| |
FastNet
|
psock.pas
|
WSAAsyncselect
| ||
TSocketConnection
|
TServerSocket
TClientSocket
|