1. 异步通信框架的需求概述
来源:互联网 发布:淘宝网店新店怎么运营 编辑:程序博客网 时间:2024/05/22 04:56
在海量连接数,高吞吐量的通信需求下,采用同步通信架构,其并发能力不能满足需求。
异步通信架构则专门适用这类需求。
异步通信的特征就是 接受客户端连接、客户端数据可读、客户端数据可写、客户端连接断开都是事件形势存在。
从系统层面看,异步通信技术支撑有两种:(1)伯克利socket轮询模式;(2)异步事件回调模式(典型的如Windows API)。
回调模式,从技术角度来说,效率更高,但是平台依赖性高;socket 轮询模式则是标准的接口。
Java的NIO,提供的就是异步轮询模式。
异步通信的典型应用场景:
海量客户端,每个客户端可能主动上行数据,也可能被动接收并执行服务端主动下行的命令;
概括起来说,就是客户端连接数量巨大,通信全双工非应答模式,例如电力的智能终端采集设备。
异步通信架构的技术需求:
(1)高连接数支持;
(2)高速的数据读写并发支持;
(3)对通信报文的可靠性提供支持(TCP通信由于系统原因,不能保证不丢包,需要应用架构来保证);
异步通信模式的复杂性,必然导致编程模型的复杂。因此为了方便开发与使用,提出如下需求:
(4) 数据报文的识别与处理,采用一致的编程模型,即符合接口规范,“插入”到通信框架,使得程序员关注报文的业务处理;
(5)良好的调试信息输出;即框架支持吞吐量等管理需求;
综上所述,我提出了通用的基于事件驱动的异步通信模型。
PS. 本架构已经在浙江电力采集系统得到应用,部署于Linux系统,压力测试下,支持了12万终端客户端长连接。
- 1. 异步通信框架的需求概述
- JAVA NIO异步通信框架MINA选型和使用的几个细节(概述入门,UDP, 心跳)
- JAVA NIO异步通信框架MINA选型和使用的几个细节(概述入门,UDP, 心跳)
- JAVA NIO异步通信框架MINA选型和使用的几个细节(概述入门,UDP, 心跳)
- JAVA NIO异步通信框架MINA选型和使用的几个细节(概述入门,UDP, 心跳)
- Windows的异步通信机制概述
- 【通信框架】Google的开源通信框架protobuf概述
- 【通信框架】Apache的开源通信框架thrift概述
- 【通信框架】Google的开源通信框架protobuf概述
- Jabber即时通信系统服务整体框架的概述
- Jabber即时通信系统服务整体框架的概述
- Jabber即时通信系统服务整体框架的概述
- Jabber即时通信系统服务整体框架的概述
- 异步UDP通信框架,修正BeginReceiveFrom的10054错误
- 【Android】Volley网络异步通信框架的使用
- EAI概述,需求,功能,技术要点----1. EAI的原始需求
- 异步通信与事件分发框架
- Netty学习:搭建一个简单的Netty服务(JAVA NIO 类库的异步通信框架)
- 解决Boost.Regex对中文支持不好的问题
- Windows、VMware、Linux及开发板间的网络连接
- 能源之战---盗梦空间的真实含义
- 学长6年的经验--软件工程师
- 赵孟頫
- 1. 异步通信框架的需求概述
- URAL 1049 Brave balloonists【数论】
- 参加的CTO俱乐部活动集合
- centos5.5的交叉编译环境建立
- VC++应注意哪些
- DOS/Windows和Linux/Unix间的文件格式转换
- Struts中防止重复提交、重复刷新、防止后退的几种解决方案
- linux下apache安装后403问题的解决办法
- C++标准库头文件介绍