文章目录
- 1 CS框架的搭建
- 1.1 结构
- 1.2 信息结构
- 1.3 通信层
- 1.4 会话层
- 1.5 方法层
- 1.6 app层
- 2 各种通信功能的实现过程
- 2.1 客户端连接到服务器的过程
- 2.2 私聊信息的过程
- 2.3 群聊信息的过程
- 2.4 客户端下线的过程
- 2.5 服务器强制宕机的过程
- 3 资源分发器
- 3.1 资源分发器
- 3.1.1 分发器概念
- 3.1.2 分发器需求分析
- 3.1.3 参数的传递形式和解析过程
- 3.2 构建action对应的方法映射
- 3.3 服务器处理来自客户端的资源请求
- 3.4 客户端响应来自服务器的资源
- 3.5 执行流程
- 3.6 使用示例
1 CS框架的搭建
1.1 结构

1.2 信息结构
由于信息在网络之间传输的局限,需要一种辨识信息含义的方式,这里采取:信令+信息的方式来解析信息:

信息在经过底层通信信道时,必须是字符串的形式,这里采用toJson在发送时将整个对象包装成字符串,接收时将字符串通过fromJson转换成NetMessage对象
1.3 通信层
由Socket产生的输入,输出流来生成底层的通信层,通信层负责不间断地侦听来自对端的信息,并提供发送信息和处理信息的方法,由于这里只做框架,所以接收消息该如何处理的工作做成抽象方法,交给基于CS框架的app开发人员进行

抽象通信层:
讯享网
1.4 会话层
会话层继承了通信层,每有一个客户端需要连接时,该客户端需要指定服务器的ip地址和端口号生成一个socket,通过这个socket创建一个客户端会话层,这个socket被已经启动的服务器监听连接请求线程监听到,通过同一个socket创建一个服务器会话层,这一对会话层用了同一个socket,所以可以通过通信层来传递信息
客户端会话层:
服务器会话层:
讯享网
1.5 方法层
方法层是给app服务的,app可以通过调用方法层的public方法完成自己的需求,方法层通过调用会话层中的具体方法来完成通信过程
客户端方法层:
服务器方法层:
服务器管理的会话池:
1.6 app层
app层可以基于整个CS框架完成开发,通过CS框架提供的机制,可以制作聊天室,棋牌室,对战平台等项目
底层无法实现的具体处理信息的方法,必须在app层由业务需求来设计完成,如toOne私聊信息的方法,CS框架通过一个接口将这些方法抛给上层,上层可以替换掉该接口或做一个适配器来具体实现
2 各种通信功能的实现过程
2.1 客户端连接到服务器的过程

2.2 私聊信息的过程

2.3 群聊信息的过程


2.4 客户端下线的过程

2.5 服务器强制宕机的过程


3 资源分发器
3.1 资源分发器
3.1.1 分发器概念

3.1.2 分发器需求分析


3.1.3 参数的传递形式和解析过程

3.2 构建action对应的方法映射


3.3 服务器处理来自客户端的资源请求
3.4 客户端响应来自服务器的资源
3.5 执行流程


3.6 使用示例





java cs架构基础
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/2297.html