同步操作将从 dotNET China/weaving-socket 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
与其他架构区别,除了同意数据接收外,架构自带内置协议,保证数据完整
WeaveMicro 微服务架构 支持.net core 2.x-5.x,正常使用
Weave微服务架构 主要目的,尽量简化和减少开发复杂度和难度,尽量双击可使用。 尽量不集成操作数据库等内容,由开发习惯自己选择。只负责最核心内容。 尽量简化调用方法和启动的方式方法
WeavingDB是一个轻量级的便捷的内存数据库,缓存库。 基于 weaving-socket ,欢迎大家学习使用
https://gitee.com/UDCS/WeavingDB
基于 weaving-socket 通讯架构制作的内存数据库,缓存库。
WsocketAutoUpPrj是一个几个weaving-socket的软件版本自动升级更新程序示例。
由于版本变化,一些视频内容与版本不服,仅供参考
https://gitee.com/dreamsfly900/universal-Data-Communication-System-for-windows/wikis
QQ交流群17375149
新版本更新:
2015-8-8
增加U3D游戏客户的通讯项目支持,并提供示例内容。
2017-5-3更新新版本。老版本在多协议公用业务逻辑方面使用了协议中转网关,将协议进行兼容转换,并做到了分布式部署。
目前大量的项目中,大多数不需要使用分布式的连接部署,新版本更新后,可实现单机多协议多接口共享业务逻辑的方式,也就是业务逻辑只用写一次,通过不同的端口监听不同的协议内容,即可达到不同设备不同协议的互联互通。
2018-3-16 新增加websocket 对于ssl的支持
2018-7-30 新增WeaveSocketDemoForUnity项目资料及视频教程下载地址
** 教程1
http://v.youku.com/v_show/id_XMTYxNTg4ODU2MA==.html
教程2
http://v.youku.com/v_show/id_XMTYxNTg4OTYyMA==.html
进阶教程,网关的使用
http://v.youku.com/v_show/id_XMTczOTAzMjAyOA==.html?from=y1.7-2
高级教程:物联网开发:硬件数据到客户端的项目讲解
http://v.youku.com/v_show/id_XMTc0MDEzNTkyMA==.html
通用数据通讯构建,设计基于TCP通信的交互框架。是编写物联网,消息队列,websocket应用,移动通信应用,IM等完美的选择。可规范先后台交互处理,可支持,B/C,C/S,手机移动标准化的通信方式 。达到后台业务一次编写,前台展示全线支持的目的。还可根据网络及负载情况分布式部署网管与服务。先已支持win10 IOT 设备与架构的数据传输支持。
QQ交流群17375149 联系QQ:20573886 现已支持:
1
架构通讯使用的数据封包协议示意图
服务端:
创建一个控制台程序,引用类库 using Weave.Base; using Weave.Server;
然后编写代码
static void Main(string[] args)
{
WeaveP2Server server = new WeaveP2Server();//初始化类库
server.receiveevent += Server_receiveevent;//注册接收事件
//当然还有很多其他的事件可以注册,比如新增连接事件,连接断开事件
server.start(8989);//启动监听8989端口
Console.WriteLine("8989listen:");
Console.ReadKey();
}
private static void Server_receiveevent(byte command, string data, System.Net.Sockets.Socket soc)
{
Console.WriteLine(data);//输出客户端发来的信息
}
客户端:
然后创建一个控制台程序,引用类库 using Weave.TCPClient; using Weave.Base;
然后编写代码
P2Pclient client = new P2Pclient(false);//初始化类库
static void Main(string[] args)
{
client.timeoutevent += Client_timeoutevent;//注册连接超时事件
client.receiveServerEvent += Client_receiveServerEvent;//注册接收事件
client.start("127.0.0.1", 8989, false);//启动连接127.0.0.1服务器的8989端口。不需要服务器TOKEN
System.Threading.Thread.Sleep(1000);
Console.WriteLine("server link OK:");
client.send(0x1, "test2017-5-5");//给服务器发送信息,参数1,0x01指令,指令可以设置0-254,其中0x9c与0xff,是保留指令不能使用。参数2:发送string类型的数据。
Console.WriteLine("send:test2017-5-5");
Console.ReadKey();
}
private static void Client_receiveServerEvent(byte command, string text)
{
//command是从服务器发来的指令
//text是从服务器发来的数据
}
private static void Client_timeoutevent()
{
//连接超时或断线会启动此事件
client。Restart(false);//重新连接
}
最后:先运行服务器端,在运行客户端,就能在服务器端看到 test2017-5-5 的输出内容。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。