当前位置:

TouchSocket网络通信框架 v2.0.0

收藏
举报
TouchSocket是 C# 的一个整合性的、超轻量级的网络通信框架。包含了 tcp、udp、ssl、http、websocket、rpc、jsonrpc、webapi、xmlrpc等一系列的通信模块。一键式解决 TCP 黏分包问题,udp大数据包分片组合问题等。使用协议模板,可快速实现「固定包头」、「固定长度」、「区间字符」等一系列的数据报文解析。
  • 作者:
    暂无
  • 演示网站:
    暂无
  • 当前版本:
    v2.0.0
  • 日期:
    2024-04-06
  • 相关链接:
    Home Page
  • 所属分类:
    网络开发 C#
  • 软件评级:
  • 下载人气:
    664
免费下载
求购此源码
源码详情
免费下载
更新日志
联系客服/入群
源码属性
授权 开源
大小 42.86MB
语言 C#
功能介绍

TouchSocket是 C# 的一个整合性的、超轻量级的网络通信框架。包含了 tcp、udp、ssl、http、websocket、rpc、jsonrpc、webapi、xmlrpc等一系列的通信模块。一键式解决 TCP 黏分包问题,udp大数据包分片组合问题等。使用协议模板,可快速实现「固定包头」、「固定长度」、「区间字符」等一系列的数据报文解析。


支持环境

.NET Framework4.5及以上。

.NET Core3.1及以上。

.NET Standard2.0及以上。

 

支持框架

Console

WPF

Winform

Blazor Server

Xamarin

MAUI

Avalonia

Mono

Unity 3D(除WebGL)

其他(即所有C#系)

 

TouchSocket特点速览

传统IOCP和TouchSocket的IOCP模式

TouchSocket的IOCP和传统也不一样,就以微软官方示例为例,他是使用MemoryBuffer开辟一块内存,均分,然后给每个会话分配一个区接收,等收到数据后,再复制接收的数据,然后把复制的数据进行处理。而TouchSocket是每次接收之前,从内存池拿一个可用内存块,然后直接用于接收,等收到数据以后,直接就把这个内存块抛出处理,这样就避免了复制操作,虽然只是细小的设计,但是在传输10w次64kb的数据时,性能相差了10倍。

数据处理适配器

相信大家都使用过其他的Socket产品,那么TouchSocket在设计时也是借鉴了其他产品的优秀设计理念,数据处理适配器就是其中之一,但和其他产品的设计不同的是,TouchSocket的适配器功能更加强大,易用,且灵活。它不仅可以提前解析数据包,还可以解析数据对象,可以随时替换,然后立即生效。例如:可以使用固定包头对数据进行预处理,从而解决数据分包、粘包的问题。也可以直接解析HTTP数据协议、WebSocket数据协议等。

兼容性与适配

TouchSocket提供多种框架模型,能够完全兼容基于TCP、UDP协议的所有协议。例如:TcpService与TcpClient,其基础功能和Socket一模一样,只是增强了框架的坚固性和并发性,将连接和接收数据通过事件的形式抛出,让使用者能够更加友好的使用。

付费服务
模板/插件
当前版本

v2.0.0

更新内容

更新描述:兼容性更新,增强型更新。RPC内容需要客户端与服务器同步更新。

更新详情:
优化
Fast二进制序列化,支持自定义序列化。
TouchRpc全系,在文件传输等大型IO时,由于心跳失败而断开连接。

新增
插件实例会以单例注入容器。
所有适配器支持缓存超时设定。
IClient增加发送、接收的最后时间记录。
Http支持多文件上传(目前仅支持小文件,具体大小以实际运行内存为准,实测100Mb没问题)。
Websocket插件默认会处理Close报文。且插件支持Close。
Rpc支持模板代码重写。
TouchRpc支持元组。

修改
IScopedContainer修改为IContainerProvider

修复
BytePool回收内存时不判断大小的bug。

联系客服

手机版

扫一扫进入手机版

返回顶部