1、distributed说明
该模块包含了服务端与客户端通信的一些处理方法,包括发送数据的封装,协议头的封装,tcp通信时进行分包,处理粘包问题。
2、结构解析

LiberateFactory,协议工厂,所有连接的本质,服务端与客户端通信的这一行为的形象化,它包含三个部分:
1)LiberateProtocol,通信协议类,连接建立、断开后的操作,发送数据等都由它来控制
2)DataPackProtoc,数据包协议的定义,所有的数据解析都要遵守它定制的规则
3)ConnectionManager,连接管理器,所有的连接都受他的指挥,可以在它里面找到想要找的连接,进行操作
   Connection,与客户端的一条连接对象,通过他可以与客户端进行通信,主动断开连接,主动推送消息等。
3、使用示例
1)test_netconnect_server.py

2)test_netconnect_client.py

3)上面分别为server(服务端)和client(客户端)的例子,运行test_netconnect_server.py文件,你会看到下图,说明服务器已经启动,并开始监听1000这个端口。


4.jpg (37.3 KB, 下载次数: 17)
下载附件  [url=]保存到相册[/url]

[color=rgb(153, 153, 153) !important]半小时前 上传

5秒内运行test_netconnect_client.py文件,你会在server这边看到下图,

4)解释下,server运行后,client运行,client会建立两个线程,每隔线程都给server发送一条消息,会调用server的指令号为111的方法(即echo_111这个函数),打印出“hello”。Server会在运行后的5秒后断开连接id为0的那条连接,断开连接时会执行doConnectionLost方法。

Firefly官方教程之Netconnect使用文档的更多相关文章

  1. Firefly官方教程之Distributed使用文档

    原地址:http://bbs.gameres.com/thread_224191.html distributed使用文档1.distributed说明该模块主要封装了各个服务进程间进行通信的方法.n ...

  2. Firefly官方教程之DBentrust使用文档

    原地址: http://bbs.gameres.com/thread_224185.html 1.dbentrust说明该模块主要是对数据库与memcached存储的处理.里面封装了从memcache ...

  3. OpenStack keystone节点搭建(官方2018年4月份文档)

    参考文档:https://docs.openstack.org/install-guide/common/conventions.html https://docs.openstack.org/mit ...

  4. linux系统编程之lseek帮助文档

    通过man 2 lseek可以查看linux中的系统函数lseek函数的帮助文档,为了更好的学习,我把这些重要内容翻译过来 NAME lseek - reposition read/write fil ...

  5. [翻译][Nokogiri官方教程] 解析HTML/XML文档 / Parsing an HTML/XML Document

    From a String From a File From the Internet Parse Options Encoding 原文: Parsing an HTML/XML Document ...

  6. UE4官方行为树快速入门文档解析和修改

    近学习了UE4官方文档的行为树快速入门指南,发现里面的部分逻辑稍稍有点混乱和重叠,于是加入了自己的想法,修改了部分行为树逻辑,优化了其AI寻路能力. 初始的基本操作和资源创建同官方文档一样:1个Fol ...

  7. Google官方教程之Selling In-app Products

    1.原文链接[需FQ]:http://developer.android.com/training/in-app-billing/index.html 2.平时对于英文文档都是大概读一下,现在翻译文章 ...

  8. Kali Linux系列教程之OpenVas安装

    Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1.  服务器层组件 2.客户层组件 安装过程 Initial setup ...

  9. 编译OpenCV文档

    概述 使用OpenCV的过程中经常查看文档,每次都去官网查看,不过国内访问速度很慢,有一份本地的文档就好了.本文列出了在Linux(Fedora)系统上从OpenCV源码编译出documentatio ...

随机推荐

  1. 使用VS建立Web网站及IIS

    一:网站运行的一般原理: 1.所有WEB程序运行都需要一个东西:Web服务器软件. 2. 网站分为动态页面和静态页面 3. web服务器软件的作用:接收请求,响应请求. 被动——无请求则无响应. Ja ...

  2. css3渐变、背景、倒影、变形

    一.背景切割background-clip 语法:background-clip:border-box | padding-box | content-box: border-box      超出b ...

  3. 优雅的实现Activiti动态调整流程(自由跳转、前进、后退、分裂、前加签、后加签等),含范例代码!

    最近对Activiti做了一些深入的研究,对Activiti的流程机制有了些理解,对动态调整流程也有了一些实践方法. 现在好好总结一下,一来是对这段时间自己辛苦探索的一个记录,二来也是为后来者指指路~ ...

  4. gluster 安装配置基本指南

    基于网络上的多篇文章,做了一些调整. gluster安装 ###  Installing Gluster wget -P /etc/yum.repos.d http://download.gluste ...

  5. 将系统日期转化为sharepoint日期

    string currentDate = SPUtility.CreateISO8601DateTimeFromSystemDateTime(DateTime.Now.Date);

  6. C#.net在后台执行javascript

    string script = string.Format("<script type='text/javascript' >alert('{0}');</script&g ...

  7. Floyd-Warshall算法详解(转)

    Floyd-Warshall算法,简称Floyd算法,用于求解任意两点间的最短距离,时间复杂度为O(n^3).我们平时所见的Floyd算法的一般形式如下: void Floyd(){ int i,j, ...

  8. 转载---SQL Server XML基础学习之<6>--XQuery的 value() 方法、 exist() 方法 和 nodes() 方法

    /*------------------------------------------------------------------------------+ #| = : = : = : = : ...

  9. Razor语法大全(转)

    Razor语法大全 因为最近在看mvc的时候在学习Razor的发现了这个不错的博文,故转之. 本文页面来源地址:http://www.cnblogs.com/dengxinglin/p/3352078 ...

  10. Ext.Net学习笔记18:Ext.Net 可编辑的GridPanel

    Ext.Net学习笔记18:Ext.Net 可编辑的GridPanel Ext.Net GridPanel 有两种编辑模式:编辑单元格和编辑行. 单元格编辑: 行编辑: 可以看出,单元格编辑的时候,只 ...