CN105812327A - 复合型高性能多用通讯方法及系统 - Google Patents

复合型高性能多用通讯方法及系统 Download PDF

Info

Publication number
CN105812327A
CN105812327A CN201410848739.8A CN201410848739A CN105812327A CN 105812327 A CN105812327 A CN 105812327A CN 201410848739 A CN201410848739 A CN 201410848739A CN 105812327 A CN105812327 A CN 105812327A
Authority
CN
China
Prior art keywords
data
communication
communication mode
platform
local optimum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410848739.8A
Other languages
English (en)
Other versions
CN105812327B (zh
Inventor
白浪
朱兴
郭欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisino Corp
Original Assignee
Aisino Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisino Corp filed Critical Aisino Corp
Priority to CN201410848739.8A priority Critical patent/CN105812327B/zh
Publication of CN105812327A publication Critical patent/CN105812327A/zh
Application granted granted Critical
Publication of CN105812327B publication Critical patent/CN105812327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开一种复合型高性能多用通讯方法,包括:接收输入信息,并判断输入信息的因子种类;根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式;对根据组合结果选择的通讯模式进行自动性能优化。本发明公开的复合型高性能多用通讯方法及系统,能够自主选择通讯模型,优化软件资源配置为主要纲领,以提高计算机资源应用,实现高性能、多功能的跨平台融合的海量通讯数据处理,提高通讯效率和服务于不同客户。

Description

复合型高性能多用通讯方法及系统
技术领域
本发明涉及通信技术领域,尤其涉及一种复合型高性能多用通讯方法及系统。
背景技术
目前公开的网络通信模型繁多,大多都是软件应用级别的网络通讯接口,比如基于socket的server/client模型,或者用多进程(/线程)实现的一对多模型,又或者在IDE基础上封装的winsocket应用等等,这些都是孤立而定制的。
有鉴于此,针对本领域现有技术的不足之处,有必要设计一种复合型高性能多用通讯服务平台及通讯方法,能够以网络通讯为核心,融合多种网络通讯模型,能根据环境、用户喜好、应用级别进行自主选择。
发明内容
为了解决上述问题,本发明提供的一种复合型高性能多用通讯服务平台及通讯方法,以网络通讯为核心,融合多种网络通讯模型,能根据环境、用户喜好、应用级别进行自主选择。
本发明提供一种复合型高性能多用通讯方法,包括:接收输入信息,并判断输入信息的因子种类;根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式;对根据组合结果选择的通讯模式进行自动性能优化。
作为一种实施例,所述因子种类包括:数据输入,其包括:通讯链路连接量、数据量和数据安全等级要求;应用输入,其包括:平台使用者、平台应用场景和通讯交互性;以及环境输入,其包括:操作平台类型、IO状态、存储状态和服务器状态。
作为一种实施例,所述根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式,包括:根据数量链路量,选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll通讯模式;根据安全等级、数据大小,选择通用TCP或UDP;根据系统状态,选择异步IO或并发监听通讯模式;根据用户或操作系统的种类,选择Spserver、ACE或libevent通讯模式。
作为一种实施例,所述对根据组合结果选择的通讯模式进行自动性能优化,包括:根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;根据通讯交互性判断数据长连接的局部优化方案;根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
作为一种实施例,所述性能优化的对象包括:数据处理线程池、双队列数据缓冲池、通讯数据加解密、数据优先级处理。
本发明还提供一种复合型高性能多用通讯系统,包括:收发模块,用于接收输入信息;判断模块,其连接收发模块,用于判断输入信息的因子种类;组合模板,其连接判断模块,用于根据预定规则对各类输入因子进行组合;选择模块,其连接组合模板,用于根据组合结果选择当前的通讯模式;优化模板,其连接选择模块,用于对根据组合结果选择的通讯模式进行自动性能优化。
作为一种实施例,所述因子种类包括:数据输入,其包括:通讯链路连接量、数据量和数据安全等级要求;应用输入,其包括:平台使用者、平台应用场景和通讯交互性;以及环境输入,其包括:操作平台类型、IO状态、存储状态和服务器状态。
作为一种实施例,所述选择模块进一步用于:根据数量链路量,选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll通讯模式;根据安全等级、数据大小,选择通用TCP或UDP;根据系统状态,选择异步IO或并发监听通讯模式;根据用户或操作系统的种类,选择Spserver、ACE或libevent通讯模式。
作为一种实施例,所述优化模板进一步用于:根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;根据通讯交互性判断数据长连接的局部优化方案;根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
作为一种实施例,所述性能优化的对象包括:数据处理线程池、双队列数据缓冲池、通讯数据加解密、数据优先级处理。
由上述本发明的实施例提供的技术方案可以看出,本方案设计的复合型高性能多用通讯方法及系统,能够自主选择通讯模型,优化软件资源配置为主要纲领,以提高计算机资源应用,实现高性能、多功能的跨平台融合的海量通讯数据处理,提高通讯效率和服务于不同客户。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例的复合型高性能多用通讯服务平台的结构示意图;
图2为本发明一实施例的通讯平台中LinuxEpoll模型的结构示意图;
图3为本发明一实施例的通讯平台中LinuxEpoll模型的结构示意图;
图4为本发明一实施例的复合型高性能多用通讯方法的流程示意图;
图5为本发明一实施例的通讯方法的三种因子的全流程处理示意图;
图6为本发明一实施例的通讯方法中通讯模式选择逻辑过程的示意图;
图7为本发明一实施例的通讯方法中通讯模式选择逻辑过程的示意图;
图8为本发明一实施例的通讯方法中通讯模式选择逻辑过程的示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
图1为本发明一实施例的复合型高性能多用通讯服务平台的结构示意图。如图1所示,本发明提供一种复合型高性能多用通讯服务平台,包括:通过总线依次连接的通讯服务模块、数据解析模块、数据库模块、多层级通讯组件模块、平台辅助功能模块、分布式负载应用模块,其中:通讯服务模块,用于接收高并发量网络通讯数据;数据解析模块,用于对通讯服务模块接收的网络通讯数据进行分析和验证;数据库模块,用于存储分析和验证后的通讯数据;多层级通讯组件模块,用于实现平台中不同层级间的数据通讯;平台辅助功能模块,用于实现平台中的辅助功能;分布式负载应用模块,用于具体应用中数据负载均衡。由此可知,本发明平台架构融合windowsIOCP(完成端口模型)、linuxepoll模型(网络I/O)、以及一些常用socket通讯模型。
如图1所示,此平台以网络通讯为核心,融合多种网络通讯模型。通讯服务模块是指通讯平台子站支撑高并发量gps网络连接的通讯服务主体,其中包括通用TCP通讯实现,通用UDP通讯实现,多协议通用服务器集成,多IP多端口监听集成,以及面相windows的IOCP通讯模型集成,面相Linux的Epoll通讯模型集成。数据解析模块是实现通讯服务模块的网络数据分析,验证等功能,包括报文协议设计与反解析,数据安全的加密解密,双队列数据缓冲池实现,数据处理线程池的实现以及数据优先级的设置。数据库模块是指通讯平台数据的存储以及访问相关模块,具体内容包括,数据的应用实现,数据库负载设计,数据库软件操作层大并发量Sql操作,分布式数据缓存实现。多层级通讯组件是指的是通讯平台不同层级间的数据通讯实现。平台辅助功能是指的是通讯平台的其他辅助功能,包括日志打印,配置文件读写,UI操作和容错处理。
关于通用网络socket,其中通用TCP/UDP通讯可用socketserver/client网络编程完成,以多线程(多进程)和堵塞/非堵塞为辅助实现1对1,1对多,多对多的轻量级应用。以Qt(IDE)为支撑平台,实现跨平台应用,以C/C++底层编程为技术支撑,跨平台的高性能资源优化。以组件式编程为基本指导思想,为sp网络编程模型等各种编程模型预留网络接口。让用户通过IDE(Qt)实现自主选择通讯模型,通讯类别,通讯链接量适合的通讯子支点。
关于windowsIOCP模型,在windows上以IOCP(完成端口模型)为主要技术,实现海量通讯。图2为本发明一实施例的通讯服务平台中windowsIOCP模型的结构示意图。如图2所示,windows操作平台自我完成底层网络数据I/O读写操作,操作完成后投递异步消息给应用程序。应用程序通过接收异步消息判断网络操作状态。应用程序将操作平台完成的IO消息写入平台维持的IO完成消息队列,保持网络操作的完整性。根据服务器硬件状态,创建2*CPU数的工作线程,工作线程永真循环,对IO完成消息队列进行轮询,并解读消息类型,将解读完成的数据推送给平台其他模块,例如,被连接、接收数据、断开连接、终止线程等。MFC框架逻辑上是IOCP网络模型的承载层,应用平台的主进程运行MFC的DLg进程上,工作线程池在MFC主进程内创建。MFC框架同时是为IOCP通讯模型提供用户交互的UI层。如图2所示,基于WinC++MFC框架(承载体)的CreateloCompletionPort函数关联一个已打开的文件实例和新建的或已存在的I/0完成端口,或者创建一个未关联任何文件的I/O完成端口。每个工作线程主要处理操作平台中完成的IO消息队列。
关于LinuxEpoll模型,在linux上以Epoll为主要技术,实现海量通讯。图3为本发明一实施例的通讯服务平台中LinuxEpoll模型的结构示意图。如图3所示,Epoll是Linux2.6内核中提出的一种提高网络I/O性能的新方法,是为了处理大批量句柄而做了改进的poll模型。要使用Epoll需要三个平台调用函数:Epoll_create(),Epoll_ctl(),Epoll_wait()。Epoll有两种工作LT和ET。LT(leveltriggered)是缺省的工作方式,并且同时支持block和no_blocksocket。在这种做法中,内核告诉你一个文件描述符是否就绪了,然后你可以对这个就绪的I/O进行操作。如果你不做任何操作,内核还是会继续通知你,传统的select/poll是这种模型的代表。ET(edgetriggered)是高速工作方式,只支持no-blocksocket。在这种模式下,当描述从未就绪变为就绪时,内核通过Epoll告诉你。然后它会假设你知道文件描述符已经就绪,并且不会再为那个文件描述符发送更多的就绪通知,直到你做了某些操作导致那个文件描述符不再为就绪状态,比如,你在发送,接收或者接收请求,或者发送接收数据少于一定量时导致一个EWOULDBLOCK错误。Epoll的优点是,支持一个进程打开大数目的socket描述符(FD),IO效率不随着FD数目增加而线性下降,使用mmap加速内核与用户空间的消息传递,动态内核微调能力。如图3所示,数据处理线程池接收用户输入,Epoll_ctl()等待Epoll事件,如果某个链接的socket上有可读可写事件,则通知数据接收线程池和发送处理线程池。数据接收线程池收到可读可写事件后,Epoll_ctl()等待Epoll事件,如果某个链接的socket上有可读可写事件,则通知接收线程链表和发送线程链表。数据处理线程池从接收数据链表中取出数据,经过逻辑处理后,将回馈的数据放入发送数据链表中。
作为一种实施例,所述通讯服务模块进一步包括:通用TCP/UDP通讯单元,用于接收常用的轻量级TCP/UDP网络通讯数据;多协议通用服务器集成单元,用于接收在通用TCP/UDP基础上进行加工的网络通讯报文协议通讯数据,如在通讯中添加自定义报文格式验证方式;多IP多端口监听集成单元,用于接收集成单元多个IP地址,一个网络端口绑定多个通讯端口的通讯数据;面相windows的IOCP通讯模型集成单元,用于接收传送Window通讯平台的海量通讯数据;面相Linux的Epoll通讯模型集成单元,用于接收传送Linux通讯平台的海量通讯数据。
作为一种实施例,所述通用TCP/UDP通讯单元进一步包括:Qt框架下的电子集成驱动器(IDE)接口、套接字socket的server/client网络通讯机制、多线程/进程和堵塞/非堵塞技术实现。
作为一种实施例,所述面相windows的IOCP通讯模型集成单元进一步包括:平台底层网络数据I/O接口,用于负责网络数据I/O读写,完成后投递异步消息给应用程序,应用程序通过接收异步消息判断网络操作状态;IO完成消息队列,用于存储应用程序将操作平台完成的IO消息写入平台维持的消息队列,保持网络操作的完整性;工作线程池,用于根据服务器硬件状态,创建2*CPU数的工作线程,对IO完成消息队列进行轮询,并解读消息类型,将解读完成的数据推送给平台其他模块;MFC框架,用于IOCP网络模型的承载层,同时也是用户交互的UI层。
作为一种实施例,所述数据解析模块包括:报文协议设计与反解析单元,用于生成双方约定的通讯报文格式以及从网络通讯中接收的初级数据包打包和提取;数据安全的加密解密单元,用于对数据包内的数据传送正文进行数据加密解密;双队列数据缓冲池实现单元,用于内存预处理,提高平台数据读写性能;数据处理线程池的实现单元,用于根据具体网络通讯压力调节数据处理模块最优方案,提高平台效率;数据优先级的设置,用于根据个性化通讯要求,对通讯数据进行优先级区分,提高平台的应用性。
作为一种实施例,所述多层级通讯组件模块包括:数据库应用实现单元,用于数据存储以及数据读写;数据库负载设计单元,用于数据库压力负载均衡;数据库软件操作层大并发量SQL操作,用于处理批量Sql注入;分布式数据缓存实现,用于处理数据缓冲负载。
作为一种实施例,所述平台辅助功能模块包括:日志打印单元,用于打印平台日志;配置文件读写单元,用于读写平台配置参数;UI操作和容错处理单元,用于用户界面操作和平台交互。
由上述本发明的实施例提供的技术方案可以看出,本方案设计的复合型高性能多用通讯服务平台,能够自主选择通讯模型,优化软件资源配置为主要纲领,以提高计算机资源应用,实现高性能、多功能的跨平台融合的海量通讯数据处理,提高通讯效率和服务于不同客户。
图4为本发明一实施例的复合型高性能多用通讯方法的流程示意图。如图4所示,本发明提供一种复合型高性能多用通讯方法,包括:接收输入信息,并判断输入信息的因子种类;根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式;对根据组合结果选择的通讯模式进行自动性能优化。本发明提供的平台根据实际输入情况的不同,综合考虑影响相关因子影响,自动选择最优通讯模式,形成性能优化方案并执行,从而达到从众多通讯技术中“采长补短”,提取高性能,高效率,高稳定性的实现。其中各因子有优先级区分和特殊的因子组合,根据组合的最终结果,自动判别优化方案,判断依据为(除了特殊组合因子外),优先判别通讯模式,然后判别性能优化,最后是数据处理。由此可知,适用于本发明公开平台的通讯方法采用通讯模式选择和性能持续优化相结合的策略。
例如,链路数量级影响通讯模式选择。当链路数量<=10时,可用通用socket编程提高开发效率;当链路数量大于十万级时,可考虑IOCP或者Epoll模型。高频率优先选择长连接。链路波动频繁或对于Linux系统时,可选动态分配内存优化方案。从合适的技术模型中动态的组合最优组合方案,形成一种全新的优化方案,具有不同技术的优点,又避免它的缺点。
作为一种实施例,所述因子种类包括:数据输入,其包括:通讯链路连接量、数据量和数据安全等级要求;应用输入,其包括:平台使用者、平台应用场景和通讯交互性;以及环境输入,其包括:操作平台类型、IO状态、存储状态和服务器状态。例如,数据安全要求可以是数据保密性;平台使用者可以是个人应用、企业应用或初级开发者等;平台应用场景可以是简单通讯、数据传输、通讯交互性等;操作平台类型可以是Linux/Windows;服务器状态可以是CPU个数性能,存储空间等。
作为一种实施例,所述根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式,包括:根据数量链路量,选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll通讯模式;根据安全等级、数据大小,选择通用TCP或UDP;根据系统状态,选择异步IO或并发监听通讯模式;根据用户或操作系统的种类,选择Spserver、ACE或libevent通讯模式。
作为一种实施例,所述对根据组合结果选择的通讯模式进行自动性能优化,包括:根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;根据通讯交互性判断数据长连接的局部优化方案;根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
作为一种实施例,所述性能优化的对象包括:数据处理线程池、双队列数据缓冲池、通讯数据加解密、数据优先级处理。
图5为本发明一实施例的通讯方法的三种因子的全流程处理示意图。如图5所示,本发明提供的复合型高性能多用通讯方法,包括:首先,接收输入的因子,并根据因子来源判断输入因子的种类,例如,因子来源分别是数据、应用或环境。接着,将判断出的不同种类的输入因子进行组合,并根据组合结果选择当前的通讯模式。当因子种类为数据时,判断数据因子的链路数量级、频率或报文大小,自主选择IOCP、Epoll、Spserver、多路复用、通用socket、TCP/UDP、长连接、短连接等;同理,当因子种类为应用时,判断数据因子的使用人或应用场景等,进行类似的自主选择过程;同理,当因子种类为环境时,判断数据因子的操作系统、系统配置或内存分布等,进行类似的自主选择过程。接着,对根据组合结果选择的通讯模式进行自动性能优化,例如,对线程池大小、数据缓冲区、动态内存分配、唤醒服务及数据存储空间等进行动态优化。接着,进行数据处理,例如,数据分发、数据堵塞或异步驱动。接着,进行守护服务,监听服务,异常处理等操作。最后,根据上述步骤获取最优化通讯模式,性能最优配置,高效数据处理方式以及高稳定性及适用性。
图6为本发明一实施例的通讯方法的时序流程示意图。如图6所示,首先,进行输入因子判断,当因子为数据输入时,进行链路数据级、频率、报文大小判断等操作;当因子为应用输入时,进行使用人判断和应用场景判断等操作;当因子为环境输入时,进行操作系统和资源判断等操作。接着,组合上述判断出的各种因子。接着,进行通讯模式选择操作,判断优先级处理,根据现有组合进行通讯模式的匹配和选择。接着,进行性能优化,根据生成的线程池、缓冲区设置、内存分配等进行通讯模式和性能优化的兼容性反馈。接着,根据反馈结果进行最优方案选择。接着,根据选择的最优方案调用数据处理,进行数据分发、数据堵塞处理、数据存储等,并将结果反馈给性能优化过程。
图7为本发明一实施例的通讯方法中通讯模式选择逻辑过程的示意图。如图7所示,作为一种实施方式,所述通讯模式包括:通用TCP通讯、通用UDP通讯、多进程监听、异步多进程监听、多协议通用服务器集成(例如,SP_Server,ACE等)、IOCP(例如,完成端口模型)以及Epoll。如图5所示,作为一种实施例,所述将判断出的不同种类的输入因子进行组合,并根据组合结果选择当前的通讯模式,包括:根据数量链路量选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll等通讯模式。随后,根据安全等级、数据大小等的判断结果,选择通用TCP或UDP。随后,根据系统状态的判断结果,选择异步IO或并发监听。随后,根据使用者和操作系统的判断结果,选择Spserver、ACE或libevent。可以理解是,上述判断过程既可以是逻辑和/或的并发关系,也可以是有先后顺序的关系。
图8为本发明一实施例的通讯方法中通讯模式选择逻辑过程的示意图。所述性能优化包括:数据处理线程池、双队列数据缓冲池、通讯数据加解密、数据优先级处理。其他和多协议服务器集成可由后期拓展输入,只要在方案生产选择中添加相关内容即可。如图8所示,作为一种实施例,所述对根据组合结果选择的通讯模式进行自动性能优化,包括:根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;根据通讯交互性判断数据长连接的局部优化方案;根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
本发明有以下主要特点,复合型,高性能,多功能,自主选择。使用该发明将最大程度减少研发成本(提供多种研发框架支持),提高通讯效率(通过匹配对应需求选择不同通讯技术),优化资源配置(服务平台底层调配)。
改发明将主要通讯技术融合,辅助以IDE实现通用性,应用面广,可应用与产品支持,可用于企业研发支撑,可服务于特别高性能的网络通讯要求。而且具有良好的扩展性,辅助以分布式数据处理,可应用与百万级别,千万级别的通讯,数据解析特殊环境。
由上述本发明的实施例提供的技术方案可以看出,本方案设计的方法及平台,能够满足电子发票的几大安全性需求:真实性、完整性以及抗抵赖性,并且提供一种方便、快捷、安全、低成本的发票真伪验证方法,为电子发票的发展提供有力保障。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或平台实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及平台实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种复合型高性能多用通讯方法,其特征在于,包括:
接收输入信息,并判断输入信息的因子种类;
根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式;
对根据组合结果选择的通讯模式进行自动性能优化。
2.根据权利要求1所述的方法,其特征在于,所述因子种类包括:
数据输入,其包括:通讯链路连接量、数据量和数据安全等级要求;
应用输入,其包括:平台使用者、平台应用场景和通讯交互性;以及
环境输入,其包括:操作平台类型、IO状态、存储状态和服务器状态。
3.根据权利要求2所述的方法,其特征在于,所述根据预定规则对各类输入因子进行组合,并根据组合结果选择当前的通讯模式,包括:
根据数量链路量,选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll通讯模式;
根据安全等级、数据大小,选择通用TCP或UDP;
根据系统状态,选择异步IO或并发监听通讯模式;
根据用户或操作系统的种类,选择Spserver、ACE或libevent通讯模式。
4.根据权利要求3所述的方法,其特征在于,所述对根据组合结果选择的通讯模式进行自动性能优化,包括:
根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;
根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;
根据通讯交互性判断数据长连接的局部优化方案;
根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;
根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
5.根据权利要求4所述的方法,其特征在于,所述性能优化的对象包括:
数据处理线程池、双队列数据缓冲池、通讯数据加解密和数据优先级处理。
6.一种复合型高性能多用通讯系统,其特征在于,包括:
收发模块,用于接收输入信息;
判断模块,其连接收发模块,用于判断输入信息的因子种类;
组合模板,其连接判断模块,用于根据预定规则对各类输入因子进行组合;
选择模块,其连接组合模板,用于根据组合结果选择当前的通讯模式;
优化模板,其连接选择模块,用于对根据组合结果选择的通讯模式进行自动性能优化。
7.根据权利要求6所述的系统,其特征在于,所述因子种类包括:
数据输入,其包括:通讯链路连接量、数据量和数据安全等级要求;
应用输入,其包括:平台使用者、平台应用场景和通讯交互性;以及
环境输入,其包括:操作平台类型、IO状态、存储状态和服务器状态。
8.根据权利要求7所述的系统,其特征在于,所述选择模块进一步用于:
根据数量链路量,选择通用socket、多线程、多协议通用服务器集成、IOCP、Epoll通讯模式;
根据安全等级、数据大小,选择通用TCP或UDP;
根据系统状态,选择异步IO或并发监听通讯模式;
根据用户或操作系统的种类,选择Spserver、ACE或libevent通讯模式。
9.根据权利要求7所述的系统,其特征在于,所述优化模板进一步用于:
根据数据量和存储状态判断数据处理线程池和双队列数据缓冲池的局部优化方案;
根据安全等级要求和平台应用场景判断数据加解密的局部优化方案;
根据通讯交互性判断数据长连接的局部优化方案;
根据链路量、数据大小和应用场景判断通讯阻塞设置的局部优化方案;
根据上述局部优化方案的判断结果进行组合,获得组合的全局优化方案。
10.根据权利要求9所述的系统,其特征在于,所述性能优化的对象包括:
数据处理线程池、双队列数据缓冲池、通讯数据加解密和数据优先级处理。
CN201410848739.8A 2014-12-29 2014-12-29 复合型多用通讯方法及系统 Active CN105812327B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410848739.8A CN105812327B (zh) 2014-12-29 2014-12-29 复合型多用通讯方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410848739.8A CN105812327B (zh) 2014-12-29 2014-12-29 复合型多用通讯方法及系统

Publications (2)

Publication Number Publication Date
CN105812327A true CN105812327A (zh) 2016-07-27
CN105812327B CN105812327B (zh) 2020-07-10

Family

ID=56420950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410848739.8A Active CN105812327B (zh) 2014-12-29 2014-12-29 复合型多用通讯方法及系统

Country Status (1)

Country Link
CN (1) CN105812327B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109298943A (zh) * 2018-10-11 2019-02-01 四川长虹电器股份有限公司 用于udp服务器的并发处理方法
CN109445969A (zh) * 2018-12-04 2019-03-08 浪潮电子信息产业股份有限公司 一种分布式tgt节点间的通信方法、装置及设备
CN114760336A (zh) * 2022-03-28 2022-07-15 北京无为致远科技有限公司 基于统一接口的多通道复用和通信模式的物联网操作系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101350963A (zh) * 2008-05-14 2009-01-21 西北大学 嵌入式电信增值服务网关
CN102830981A (zh) * 2012-09-12 2012-12-19 上海斐讯数据通信技术有限公司 一种用于嵌入式系统软件开发工具的实现方法
CN103049245A (zh) * 2012-10-25 2013-04-17 浪潮电子信息产业股份有限公司 一种基于cpu多核平台的软件性能优化方法
CN103763744A (zh) * 2014-01-23 2014-04-30 东南大学 蜂窝小区间d2d通信传输模式切换方法
US20140325520A1 (en) * 2013-04-30 2014-10-30 Hewlett-Packard Development Company, L.P. Application thread to cache assignment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101350963A (zh) * 2008-05-14 2009-01-21 西北大学 嵌入式电信增值服务网关
CN102830981A (zh) * 2012-09-12 2012-12-19 上海斐讯数据通信技术有限公司 一种用于嵌入式系统软件开发工具的实现方法
CN103049245A (zh) * 2012-10-25 2013-04-17 浪潮电子信息产业股份有限公司 一种基于cpu多核平台的软件性能优化方法
US20140325520A1 (en) * 2013-04-30 2014-10-30 Hewlett-Packard Development Company, L.P. Application thread to cache assignment
CN103763744A (zh) * 2014-01-23 2014-04-30 东南大学 蜂窝小区间d2d通信传输模式切换方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄欣: "自适应网络I_O模型的研究与实现", 《中国优秀硕士论文全文数据库 信息科技辑》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109298943A (zh) * 2018-10-11 2019-02-01 四川长虹电器股份有限公司 用于udp服务器的并发处理方法
CN109445969A (zh) * 2018-12-04 2019-03-08 浪潮电子信息产业股份有限公司 一种分布式tgt节点间的通信方法、装置及设备
CN114760336A (zh) * 2022-03-28 2022-07-15 北京无为致远科技有限公司 基于统一接口的多通道复用和通信模式的物联网操作系统
CN114760336B (zh) * 2022-03-28 2024-02-06 北京无为致远科技有限公司 基于统一接口的多通道复用和通信模式的物联网操作系统

Also Published As

Publication number Publication date
CN105812327B (zh) 2020-07-10

Similar Documents

Publication Publication Date Title
JP7197612B2 (ja) オンデマンドネットワークコード実行システム上での補助機能の実行
CN107729139B (zh) 一种并发获取资源的方法和装置
CN103942178A (zh) 多核处理器上实时操作系统与非实时操作系统之间的通信方法
US20150058823A1 (en) Remote debugging in a cloud computing environment
CN102724035B (zh) 一种加密卡的加解密方法
US8984530B2 (en) Queued message dispatch
US20060259606A1 (en) Method and system for executing a container managed application on a processing device
US9674293B2 (en) Systems and methods for remote access to IMS databases
US11334503B2 (en) Handling an input/output store instruction
US8352617B2 (en) Method and system for data processing
CN102081554A (zh) 云计算操作系统及其内核控制系统及方法
US11074203B2 (en) Handling an input/output store instruction
CN105812327A (zh) 复合型高性能多用通讯方法及系统
US10341176B2 (en) System and method for network provisioning
CN114928579A (zh) 数据处理方法、装置、计算机设备及存储介质
WO2021238259A1 (zh) 一种数据传输方法、装置、设备及计算机可读存储介质
CN114363269A (zh) 一种消息传输方法、系统、设备以及介质
CN108509257B (zh) 一种基于多线程的消息处理方法及装置
CN111163102B (zh) 数据处理方法及装置、网络设备、可读存储介质
US8073885B2 (en) Recording apparatus, file descriptor generation method, and program
US10523793B2 (en) Kernel multiplexing system of communications
CN109685646B (zh) 一种资金服务方法及其系统
KR101952187B1 (ko) 서비스 노드 능력 처리 방법, 장치, 서비스 분류기 및 서비스 제어기
CN106407309B (zh) 支持多种数据源的集群数据库数据加载工具及方法
CN113810397B (zh) 协议数据的处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant