一种基于socket的短连接通信方法和装置制造方法及图纸

技术编号:28948252 阅读:60 留言:0更新日期:2021-06-18 22:05
本发明专利技术涉及通信技术领域,具体涉及一种基于socket的短连接通信方法和装置。所述方法包括:通过初始化系统事件机制;监听服务器目标接口并注册基于socket的目标事件;根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。本申请公开的方案占用的系统资源少而且无需管理进程或者线程的创建和回收,健壮性更好。

【技术实现步骤摘要】
一种基于socket的短连接通信方法和装置
本专利技术涉及通信
,具体涉及一种基于socket的短连接通信方法和装置。
技术介绍
目前高并发socket同步短连接通信主要是采用多线程或者多进程方式。多线程模式是通过建立线程池,每次通讯请求都选取在线程池中选取一个线程以实现高并发通信;多进程模式是每建立一个连接就需要创建一个进程,在子进程中完成socket短连接通信。然而目前的多进程或者多线程方式实现的高并发同步短连接通信方法都占用系统资源较多,还需要不断地进行进程或者线程管理,开发复杂度较高。
技术实现思路
本申请的目的旨在至少能解决上述的技术缺陷之一。本申请所采用的技术方案如下:第一方面,本申请实施例公开了一种基于socket的短连接通信方法,应用于服务器,所述方法包括:初始化系统事件机制;监听服务器目标接口并注册基于socket的目标事件;根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。可选地,注册基于socket的目标事件包括以下至少之一:注册监听事件、注册队列事件、注册信号事件。可选地,根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:当检测到目标事件为连接事件时,执行创建socket、注册socket事件并连接客户端的进程。可选地,所述根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程还包括:当检测到目标事件为socket读事件,执行基于socket的目标进程,其中所述目标进程用于基于目标socket接口接收客户端发送的请求报文并生成应答报文;其中所述请求报文和应答报文具有相同的ID标识;或,当检测到目标事件为socket写事件,执行基于socket的目标进程,其中所述目标进程用于断开基于socket的通信连接。可选地,当检测到的是基于socket的读事件是通讯消息队列读事件时,将所述生成的应答报文通过目标socket接口发送至客户端。可选地,所述根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:当检测到目标事件是终止进程信号事件时,终止基于socket的目标进程。第二方面,本申请实施例提供了一种基于socket的短连接通信方法,应用于客户端,所述方法包括:初始化系统事件机制;注册基于目标socket的目标事件;其中所述目标socket用于发送根据用户操作命令生成的请求报文或接受服务器发送的应答报文;所述应答报文是服务器根据所述请求报文生成;所述请求报文和应答报文具有相同的ID标识;根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。可选地,所述根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:当检测到所述目标事件为基于socket的读事件是通讯消息队列读事件,执行创建socket注册socket事件,并连接服务器的进程;进一步地,执行将所述请求报文基于创建的socket连接发送至服务器。可选地,所述根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:当检测到目标事件是socket读事件,执行基于socket目标进程,其中所述目标进程用于接收服务器发送的应答报文,并将所述应答报文反馈至用户。第三方面,本申请实施例提供了一种基于socket的短连接通信装置,应用于服务器,所述装置包括:初始化模块、监听模块、注册模块、检测模块和执行模块;其中,所述初始化模块,用于初始化系统事件机制;所述注册模块,用于注册基于目标socket的目标事件;其中所述目标socket用于发送根据用户操作命令生成的请求报文或接受服务器发送的应答报文;所述应答报文是服务器根据所述请求报文生成;所述请求报文和应答报文具有相同的ID标识;所述监听模块用于监听服务器目标接口;所述检测模块用于检测目标事件;所述执行模块,用于根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。第四方面,本申请实施例提供了一种电子设备,包括处理器和存储器;所述存储器,用于存储操作指令;所述处理器,用于通过调用所述操作指令,执行上述任一实施例中所述的方法。第五方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法。本申请实施例提供基于socket的短连接通信方案通过初始化系统事件机制;监听服务器目标接口并注册基于socket的目标事件;根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。其有益效果至少包括以下之一:(1)本申请实施例公开的通信方案相比多进程或者多线程方式的高并发通信占用的系统资源少;(2)本申请实施例公开的通信方案相比多进程或者多线程方式无需管理进程或者线程的创建和回收,没有多进程或者多线程管理不当引发的其他隐性问题,健壮性更好。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为本申请实施例提供的一种基于socket的短连接通信方法的流程示意图;图2为本申请实施例提供的一种基于socket的短连接通信方法的流程示意图;图3为本申请实施例提供的一种基于socket的短连接通信装置的示意图图4为本申请实施例提供的一种电子设备的结构示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本专利技术的限制。本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式,其中的“第一”“第二”等只是为了介绍清楚方案而进行的对象区分定义,并不对对象本身进行限制,当然“第一”和“第二”限定的对象可能是同一个终端、设备和用户等,也可能是同一种终端、设备和用户。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。此外应理解,本申请实施例中“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一(项)个”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任本文档来自技高网
...

【技术保护点】
1.一种基于socket的短连接通信方法,应用于服务器,其特征在于,所述方法包括:/n初始化系统事件机制;/n监听服务器目标接口并注册基于socket的目标事件;/n根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。/n

【技术特征摘要】
1.一种基于socket的短连接通信方法,应用于服务器,其特征在于,所述方法包括:
初始化系统事件机制;
监听服务器目标接口并注册基于socket的目标事件;
根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程。


2.根据权利要求1所述的基于socket的短连接通信方法,其特征在于,注册基于socket的目标事件包括以下至少之一:
注册监听事件、注册队列事件、注册信号事件。


3.根据权利要求2所述的基于socket的短连接通信方法,其特征在于,根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:
当检测到目标事件为连接事件时,执行创建socket、注册socket事件并连接客户端的进程。


4.根据权利要求3所述的基于socket的短连接通信方法,其特征在于,根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程还包括:
当检测到目标事件为socket读事件,执行基于目标socket接口接收客户端发送的请求报文并生成应答报文;其中所述请求报文和应答报文具有相同的ID标识;或,
当检测到目标事件为socket写事件,执行断开基于socket的通信连接。


5.根据权利要求4所述的基于socket的短连接通信方法,其特征在于,当检测到的基于socket的读事件是通讯消息队列读事件时,将所述生成的应答报文通过目标socket接口发送至客户端。


6.根据权利要求5所述的基于socket的短连接通信方法,其特征在于,所述根据检测到的目标事件类型,执行与所述目标事件类型匹配的目标进程包括:
当检测到目标事件是终止进程信号事件时,终止基于socket的目标进程。


7.一种基于socket的短连接通信方法,应用于客户端,其特征在于,所述方法包括:
初始化系统事件机制;
注册基于目标socket的目标事件;其中所述目标socket用于发送根据用户操作命令生成的请求报文或接受...

【专利技术属性】
技术研发人员:孙瑞浩石立宪
申请(专利权)人:中信银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1