作者: WiNDDRiVER(soulawing@gmail.com)
如果你觉得这个项目对你有用,请考虑捐赠支持作者继续更新
感谢 xlnron 的帮助
感谢 viniciusfbb 发现并修复了该问题
与第三方内存管理库搭配使用时会出现内存泄漏,robertodellapasqua 发现了该问题,最终由 pony5551 找到了该问题产生的原因,特此感谢!这应该是 Delphi 的 [weak] 内部实现有缺陷,将 [weak] 替换成 [unsafe] 后该问题得以解决。
针对不同平台使用不同的IO模型:
IOCP
Windows
KQUEUE
FreeBSD(MacOSX, iOS...)
EPOLL
Linux(Linux, Android...)
支持极高的并发
Windows
能跑10万以上的并发数, 需要修改注册表调整默认的最大端口数
Mac
做了初步测试, 测试环境为虚拟机中的 OSX 10.9.5, 即便修改了系统的句柄数限制, 最多也只能打开32000多个并发连接, 或许 OSX Server 版能支持更高的并发吧
同时支持IPv4、IPv6
零内存拷贝
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(服务端为ubuntu 16.04 desktop)
HTTPS(服务端为ubuntu 16.04 desktop)