Document

Unity3D游戏,TCP,WEBCOSKT,HTTP通信架构 weaving-socket

weaving-socket 详细介绍

项目简介

2017-8-8:新发布功能

增加U3D游戏客户的通讯项目支持,并提供示例内容。

2017-5-5: 新发布 weaving-socket 架构的.net core跨平台版本

需要.net core跨平台使用的 打开以下链接

https://git.oschina.net/dreamsfly900/weaving-socket-core

weaving-socket,设计基于TCP/websocket通信的交互框架。是编写物联网,消息队列,websocket应用,移动通信应用,IM等完美的选择。可规范先后台交互处理,可支持,B/C,C/S,手机移动标准化的通信方式 。达到后台业务一次编写,前台展示多协议全线支持的目的。还可根据网络及负载情况分布式部署网管与服务。先已支持win10 IOT 设备与架构的数据传输支持。 

可实现单机多协议多接口共享业务逻辑的方式,也就是业务逻辑只用写一次,通过不同的端口监听不同的协议内容,即可达到不同设备不同协议的互联互通。

项目优势

使用此架构编写项目可以做到在单机负载不足的情况下可以交差扩容。通过不同的前置交换端和后端增容,达到前后均可增容。

使用此架构或者架构支持的通讯协议进行项目编写可以,同时支持websocket,http,socket json,socket 十六进制,4中协议,后端编写时不需要知道前端的通讯协议使用统一的发送方法即可达成交互。

http://git.oschina.net/dreamsfly900/universal-Data-Communication-System-for-windows/blob/master/(物联网客户端)十六进制通讯协议详解.docx

 

1.可达到快速支持多协议混合支持,多协议混合支持的优势在于,当您的项目在前期需要WEBSOCKET通信,后期需要增加UWP,或者其他C/S软件通信时,只需要开发对应协议的端口,完全不需要修改任何业务逻辑代码即可完成。极大的增强了多客户端多协议内容扩展的便捷性。

2.在单机性能不能满足时,可通过协议代理网关快速的将现有项目快速的变为分布式负载项目。

3.业务逻辑编写快速便捷:编写业务逻辑时,只需要继承一个接口即可通信。接收数据时只需要在自定义方法上增加特点标识,架构即可自动识别到此方法,并将对应的通信数据发送到该方法中。发生数据时,通过内置方法自动拆分大数据,不用担心发送大数据大小问题。

技术支持群:17375149

软件适用范围:

此软件适用于,游戏服务端,及时通讯,数据传输,物联网数据获取,云数据互通,等大部分与网络数据传输有关的项目软件。数据内容可通过实体类对象之间发送出去,以JSON 数据形式编码,速度快,操作简单,数据安全。

 1. 企业级,通用级C/s系统。相对于直接连接数据库,此架构更稳定安全,相对于基于http通讯的c/s项目,具有更高的执行效率,数据通信更小更安全性。可以后端持久运行逻辑与数据。
 2. 手机推送项目,相对于第三方手机消息推送此架构,拥有更高的自由特性,更便于对于信息异常的追踪处理,根据项目的特性可以拥有更高的即时通讯。
 3. 及时通讯项目,更便于开发出c/s,b/s同步的混合项目,例如:开发c/s,b/s的聊天项目,后端逻辑只需编写一次,不需要分别为b/s,c/s单独编写逻辑。只需打开路由即可代理不同协议 。
 4. 对于复杂网络的项目,一些项目需要从公网发生数据到不同的内网平台,此架构可以统一对外数据接收端口,分发到不同的对应网络。从不同的内网平台的数据可以通过统一端口分发至不同的公网地址。简单的表述就是外网多端数据统一路由分发到对应端,或是内网单一端数据分发外网多端。安全,稳定,快速,健壮。
 5. 物联网项目。通过usb,com,udt,等接口物联网统一转换为socket接口。
b/s,web项目,对于服务端执行大量消耗等待的功能可使用web socket,使浏览器提升等待体验和避免服务端的阻塞

分布式网关负载说明

    1. 对于网络连接来说,一般的连接极限来自于,应用程序性能,网络带宽,和机器连接极限.

    2. 此网关负载主要是通过,多机运行节点,,多节点数据合并,避免机器连接极限,与带宽极限。此网关适合于数据类型项目,对于大型文件下载传输,视频并不合适。

    3. 主要有点使用TCP方式,支持多种类型客户端连接,WP系统客户端,C/S客户端,安卓客户端,IOS客户端,B/S客户端,PLC,各种支持 TCP微芯片设备。适用于,网络游戏,工业信息采集,智能家庭设备采集,工业设备采集,实时性较强的IM类型项目,也可替代一般的程序与数据库交互,可做 到数据传输快,安全,稳定。极大的降低数据库压力。

    4. 原理说明:在客户端大量并发的情况下,一个应用所承受是有极限的,分布这个极限需要使用多机负载,在多机负载情况下,为了保证数据一致性,会有越来 越多的资源消耗在数据同步中,此方案解决的是在数据带宽占用小,连接数量大的项目中,通过使多机负载的数据合并数据通道,使多个客户端连接,合并入同一通 道内,减少对于数据功能端的连接数量消耗.改为对带宽资源消耗,以空间换连接资源的方法节约,并提高负载能力.相当于客户端如果发送请求为10W个,网关 转化量设置为100,则数据处理端的连接量为10W/100=1000个.如图显示:

图1 无连接是服务节点展示图

图2 有连接时动态增加服务节点

5. 基本流程图:

weaving-socket

选择将代码托管在码云
你还在等什么

可能是中国最大最好的代码托管平台

原来通讯项目可以更简单~~~增加U3D游戏客户的通讯项目支持,并提供示例内容。特别鸣谢 风影大人 对项目的整理与代码规范所做的贡献,QQ交流群17375149 联系QQ:20573886
 
 
 

posted @ 2017-08-31 17:08  从未被超越  阅读(2270)  评论(0编辑  收藏  举报