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
 
 
 
下载zipmaster分支 代码最近更新:2017-08-25

Unity3D游戏,TCP,WEBCOSKT,HTTP通信架构 weaving-socket的更多相关文章

  1. 基于TCP协议的项目架构之Socket流传输的实现

    项目背景  某银行的影像平台由于使用时间长,服务器等配置原因,老影像系统满足不了现在日益增长的数据量的需求,所以急需要升级改造.传统的影像平台使用的是Oracle数据库和简单的架构来存储数据(视频.图 ...

  2. 泡泡堂、QQ堂游戏通信架构分析

    http://blog.csdn.net/sodme/article/details/468327#comments ————————————————————————————————————————— ...

  3. 总结:Unity3D游戏上线后的流程回顾

    原地址:http://unity3d.9tech.cn/news/2014/0127/39748.html 首先.unity 灯光烘焙 :Unity 3d FBX模型导入.选项Model 不导入资源球 ...

  4. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.1

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  5. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.2

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  6. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.0.1

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  7. [Unity3D]Unity3D游戏开发Lua随着游戏的债券(于)

    ---------------------------------------------------------------------------------------------------- ...

  8. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.3

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  9. [Contiki系列论文之2]WSN的自适应通信架构

    说明:本系列文章翻译自Contiki之父Adam Dunkels经典论文,版权归原作者全部. Contiki是由Adam Dunkels及其团队开发的系统.研读其论文是对深入理解Contiki系统的最 ...

随机推荐

  1. nginx下TP5 隐藏入口文件+支持pathinfo模式+配置多项目根目录

    首先说下项目目录情况  跟目录/usr/share/nginx/html/(别说怎么这么深  0.0) html文件夹下面两个目录 pssh  pssh_shop 两个tp5项目分别对应两个二级域名 ...

  2. 2. Java中的垃圾收集 - GC参考手册

    标记-清除(Mark and Sweep)是最经典的垃圾收集算法.将理论用于生产实践时, 会有很多需要优化调整的地点, 以适应具体环境.下面通过一个简单的例子, 让我们一步步记录下来, 看看如何才能保 ...

  3. SQL-Redis使用详细教程

    一.Redis基础部分: 1.redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1.取最新N个数据的操作 2.排行榜应 ...

  4. python网络编程01

    1.什么是C/S架构? 客户端/服务器架构.实现服务端软件与客户端软件基于网络的通信. 2.互联网协议是什么?分别介绍五层协议中每一层的功能? 互联网协议是指用于互联网通信的规范.分为:osi七层.t ...

  5. About SQL Server 2016 CPT2

    SQL Server 2016 CTP2已经发布,可以从以下主页进行下载. http://www.microsoft.com/en-us/server-cloud/products/sql-serve ...

  6. hdu 5029树链剖分

    /* 解:标记区间端点,按深度标记上+下-. 然后用线段树维护求出最小的,再将它映射回来 */ #pragma comment(linker, "/STACK:102400000,10240 ...

  7. restful(1):序列化

    restful协议中,一切皆是资源,操作只是请求方式 model_to_dict()方法: from django.forms.models import model_to_dict obj = Pu ...

  8. [K/3Cloud] 单据转换插件执行顺序

    1.下推事件及顺序 //初始化变量 OnInitVariable(InitVariableEventArgs e) //解析字段映射关系,并构建查询参数.这里可以加入你想要的额外的字段 OnQuery ...

  9. [NOIP2005] 提高组 洛谷P1051 谁拿了最多奖学金

    题目描述 某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同: 1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1 ...

  10. 自定义View实现跟随手指的小球

    package com.pingyijinren.test; import android.content.Context; import android.graphics.Canvas; impor ...