YxdIOCP (DIOCP修改版)

YxdIocp 是使用Delphi对Windows IOCP通讯模型的封装,基于DIOCP改进修改。YxdIocp包含有支持大并发的TCP服务组件、HTTP服务组件、UDP服务组件,和TCP、UDP等基础客户端组件。

 

【SVN】

https://github.com/yangyxd/YxdIOCP.git


【特别说明】
  本源码由YangYxd(音儿小白)以网友天地弦的DIOCP为基础修改优化而来。YxdIocp与DIOCP使用方式略有不同,不完全兼容!!
  我会接收大家提交的BUG并尽快修复,但不负责解答任何使用方面的问题。实际上代码已经有比较多的注释,开源并不等于作者需要
  免费给大家做客服解答各种问题。开源的目的一是让代码尽快成熟稳定,二是丰富行业资源和活力。“拿来主意”虽说比较快捷
  省事,但并不值得提倡,有问题张口就问不是个好习惯。

【当前版本】  

2015.08.11.001

【主要更改】  

 - -----------------------------------
 - 2015.08.11  
 - -----------------------------------  
 + HTTP服务模块支持Session, Cookies, 感谢: 天地弦  
 * 修复上个版本UdpSocket接收数据变慢的问题  
 * 优化字符串处理单元,更加高效. 感谢: 歼10  
 * 其它略微调整和优化
 - -----------------------------------
 - 2015.07.31
 - -----------------------------------
 * 优化TIocpUdpServer服务,解决退出时内存泄漏问题
 * TIocpTcpSocket优化和加强,增加两个用来判断内核接收缓冲区状态的属性:RecvBufferIsEmpty、RecvBufferSize,
   增加几个Read函数,增加Seek函数,修改Connected属性的算法(速度变慢了,但保证正确性)
 + TIocpClientContext增加BindIP和BindPort属性,可查看当前连接的本机IP地址(服务器多IP时可判断客户端是与那个IP建立的连接)
 + 增加TIocpTcpSocketPool连接池,自动管理TIocpTcpSocket。
 + 增加TIocpTcpClientProxy TCP 客户端代理服务,帮助实现服务器间通讯、数据转发。
 * 修复TIocpHttpRequest.DecodeParam函数存在的两处BUG
 * 其它细小优化,增强稳定性。
 * 感谢:Huixch(Http服务BUG),  仓井很空(2543818374, 修改IocpTcpSocket和Proxy的建议和测试)
 - -----------------------------------
 - 2015.07.19
 - -----------------------------------
 + HTTP模块增加Pipe支持
 * 优化自动踢除死连接功能, 增加KickOutInterval属性
 * 优化TIocpTCPSocket,增加ConnectTimeOut属性
 * 其它细小优化调整
 - -----------------------------------
 - 2015.06.12
 - -----------------------------------
 + 增加UDP服务
 + 增加Demo UDPEcho
 * 优化HTTP服务
 * 优化UDPSocket
 - -----------------------------------
 - 2015.05.27
 - -----------------------------------
 + 加载HTTP服务,增加表单提交支持,可上传小文件。
  HTTP模块主要功能:
  1. 支持标准Http访问服务
  2. 支持局部传输
  3. 支持文件下载,断点续传
  4. 支持表单提交
  5. 支持GZip压缩传输
 - -----------------------------------
 - 2015.05.26
 - -----------------------------------
 * 修复TIocpCustomContext中使用内存池Push时未加锁引发的严重BUG。
 * 优化HTTP服务。
 + 同步DIOCP在TIocpConnection中将请求加入队列,以免连续多个请求时产生多线程处理一个连接,引发问题。
 - -----------------------------------
 - 2015.05.21
 - -----------------------------------
 * 修复TIocpTcpCodecServer解码流程中的BUG。
 * 优化HTTP服务
 + 增加超时自动踢除功能
 - -----------------------------------
 - 2015.05.20
 - -----------------------------------
 * 修复多处BUG。如句柄数问题。
 * 修复HTTP服务多处BUG
 + HTTP服务增加文件下载功能,支持超大文件传输。
 - 将YxdHash、YxdStr精简出IOCP专用版本
 + 添加YxdIocp.dbk,可直接安装成控件
 - -----------------------------------
 - 2015.05.15
 - -----------------------------------
 * 简化使用接口。使用时只需要引用 iocp.pas 单元即可。
 * 去除重复代码。
 * 使用了一些自己编写的新类替换掉原来的类似模块,如 TIocpStream, TIocpHttpServer 等
 * 用法更简单了
 * D2007下调试通过,其它版本IDE暂未测试。
 
【感谢】
 感谢DIOCP原作者天地弦,以及DIOCP官方群、QDAC官方群所有参与本项目测试、修改的朋友。
 
【注意事项】
 您在使用中发现任何BUG、更改意见等请及时联系我们,不胜感激。
 使用本源码时您需要自行承担一切后果,作者和项目组不为此承担任何法律责任。
 您可以任意复制、更新本源码,但请注明来源,或在您的软件特定位置标注说明。
 
【联系我们】
  yangyxd QQ: 2514718952
  原作者天地弦QQ: 185511468
  DIOCP 官方群: 320641073
  QDAC 官方群: 250530692
 
【网站】
  yangyxd blog: http://www.cnblogs.com/yangyxd
  DIOCP 官方网站: http://www.diocp.org
  QDAC 官方网站: http://www.qdac.cc
 
【下载】
百度网盘: http://pan.baidu.com/s/1kTKgHoj
提取密码: ma5w

 

posted @ 2015-07-31 21:34  我爱我家喵喵  阅读(1498)  评论(0编辑  收藏  举报