NetworkComms内核解析
Sunny5816
这个作者很懒,什么都没留下…
展开
-
c#网络通信框架networkcomms内核解析之三 消息同步调用
networkcomms.net 来自英国的网络通信框架 官方网址 www.networkcomms.net 中文网址www.networkcomms.cn客户端发送消息给服务器,服务器计算结果返回给客户端,这是网络通信应用程序中常见的使用情境。拿用户登录举例子,客户端把包含用户名和密码的契约类发送给服务器,服务器从数据获取数据后与收到的契约类数据进行对比,如果一致,返回登录成功的原创 2015-02-11 13:44:49 · 1534 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之五 数据监听
本文基于networkcomms2.3.1开源版本 gplv3协议在networkcomms中,服务器端可以同步监听数据,也可以异步监听数据。以开源的networkcomms.2.31为例服务器端监听代码: protected override void StartIncomingDataListen() { if (!原创 2015-02-14 21:59:57 · 1985 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之四 心跳检测
本文基于networkcomms2.3.1开源版本 gplv3协议在网络通信程序中,心跳检测是必不可少的,我们来看一下networkcomms中是如何实现的以networkcomms2.3.1为例:在服务器端,会有一个线程专门用来发送心跳消息代码如下: protected static void TriggerConnectionKeepAliveT原创 2015-02-14 21:59:27 · 3110 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之八 数据包的核心处理器
本文基于networkcomms2.3.1开源版本 gplv3协议我们先回顾一个 c#网络通信框架networkcomms内核解析之六 处理接收到的二进制数据 中,主程序把PacketBuilder 中的数据交给核心处理器处理的过程 //创建优先级队列项目 PriorityQueueItem item = new PriorityQueueItem(priority,原创 2015-02-14 22:01:14 · 1328 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析
networkcomms是我遇到的写的最优美的代码,很喜欢,推荐给大家:)基于networkcomms2.3.1开源版本( gplv3)协议,写了一些文章,希望大家喜欢,个人水平有限,不足之处难免。networkcommsc#通信框架来自于美丽的英国剑桥,由大洋彼岸的两位工程师 Marc Fletcher, Matthew Dean开发。c#网络通信框架networkcom原创 2015-02-15 12:30:40 · 1791 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之十 支持优先级的自定义线程池
本例基于networkcomms2.3.1开源版本 gplv3协议如果networkcomms是一顶皇冠,那么CommsThreadPool(自定义线程池)就是皇冠上的明珠了,这样说应该不夸张的,她那么优美,简洁,高效。在 《c#网络通信框架networkcomms内核解析之六 处理接收到的二进制数据》中我们曾经提到,服务器收到数据后,如果是系统内部保留类型数据或者是最高优先级数原创 2015-02-14 22:02:02 · 1048 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之七 数据包创建器(PacketBuilder)
本文基于networkcomms2.3.1开源版本 gplv3协议PacketBuilder 数据包创建器,用于辅助创建数据包。程序把Tcp连接上收到的二进制数据暂时存储在 packetBuilder中,如果收到的数据足够多,程序会把数据包包头解析出来,并根据数据包包头中的数据,解析出数据包大小,根据数据包大小,从PacketBuilder中截取相应的二进制数据,把这部分数据以内原创 2015-02-14 22:00:46 · 1573 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之九 自定义处理方法的运行机制
本文基于networkcomms2.3.1开源版本 gplv3协议我们自己写的处理方法都称之为自定义处理方法比如,我们在服务器上写的与登陆相关的处理方法:NetworkComms.AppendGlobalIncomingPacketHandler("ReqLogin", IncomingLoginRequest); private void Incom原创 2015-02-14 22:01:46 · 1498 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之六 处理接收到的二进制数据
本文基于networkcomms2.3.1开源版本 gplv3协议在networkcomms通信系统中,服务器端收到某连接上的数据后,数据会暂时存放在"数据包创建器"(PacketBuilder)中,PacketBuilder类似一个流动的容器,收到的数据被服务器处理完成后,相应在二进制数据,会从存储他的PacketBuilder中删除。我们知道在networkcomms的消息体原创 2015-02-14 22:00:34 · 1670 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之二 消息处理流程
networkcomms.net 来自英国的网络通信框架 官方网址 www.networkcomms.net 中文网址www.networkcomms.cn 发送端发送消息给接收端 ,接收端进行处理 举例:客户端把某用户信息(用户ID,用户密码)传输给服务器,服务器存储到数据库中。发送方 1、契约类(用户信息类) [Proto原创 2015-02-11 13:43:53 · 1768 阅读 · 0 评论 -
c#网络通信框架networkcomms内核解析之一 消息传送
networkcomms.net 来自英国的网络通信框架 官方网址 www.networkcomms.net 中文网址www.networkcomms.cn在网络通信程序中,本地的类或者对象,要传输到通信的另一端,在网络上传输的时候是二进制流的形式。那么在发送消息的时候要把对象序列化为二进制流对方接收到二进制数据流要还原成对象。我们知道使用Tcp协议传输消息的时候有原创 2015-02-11 13:43:03 · 2517 阅读 · 0 评论 -
NetworkComms通信框架 V3 性能测试
我们的测试程序采用这样的模式由于Networkcomms通信框架中,如果客户端与服务器端某端点之间已经存在连接,则会直接调用。所以想模拟客户端与服务器同一个端口的连接,不容易实现。好在NetworkComms通信框架拥有一个项重要的功能,即可以在多个端口上进行监听,即某一个服务器端程序,可同时监听几百个,上千个端口。我们的测试程序中,服务器端监听几百个端口,客户端分别与这几原创 2015-03-03 12:15:31 · 1794 阅读 · 0 评论