高性能大容量SOCKET并发(一)(IOCP完成端口例子介绍)
例子主要包括IOCP控件封装、服务端实现、传输协议和日志、控制、SQL查询、上传、下载等协议实现,并包括一些初步的性能测试结果。
服务端:
界面截图如下:客户端:
提供服务和桌面方式运行,桌面方式可直接打开程序,方便日常调试,可以使用命令行注册或卸载服务,在CMD中输入D:\DEMO\IOCPDemo\Bin\IOCPDemoSvr.exe -install来注册服务,在CMD输入D:\DEMO\IOCPDemo\Bin\IOCPDemoSvr.exe -uninstall来卸载服务。
界面截图如下:性能:
主要实现了服务端日志查看,服务端协议类表查看,SQL语句执行协议,上传、下载协议实现,其中对上传、下载实现了一个多线程同时传,用于测试服务器并发性能。
支持超过2000个链接及以上同时上传文件,不过每个连接上传速度只有1到2K。支持超过2W个连接同时在线传输命令。单实例上传下载测试结果:
【高性能大容量SOCKET并发(一)(IOCP完成端口例子介绍)】下载地址:http://download.csdn.net/detail/sqldebug_fan/4510076
从测试结果可以看出随着发送包增大,速度变快。这里存在一个风险,就是SOCKET传输失败的次数也会增加。
推荐阅读
- spring|spring boot项目启动websocket
- CocoaAsyncSocket|CocoaAsyncSocket (GCDAsyncSocket)适配IPv6
- WebSocket|WebSocket 语法解析
- 使用交叉点观察器延迟加载图像以提高性能
- Websocket和Socket.io的区别及应用
- swoole打造高性能赛事直播平台1(准备工作)
- 高性能分布式锁
- Python3.x(Socket网络编程)
- 使用Socket实现TCP编程及聊天室的编写
- 连接池的作用就是为了提高性能