[发明专利]一种基于socket的短连接通信方法和装置有效
申请号: | 202110333964.8 | 申请日: | 2021-03-29 |
公开(公告)号: | CN112995198B | 公开(公告)日: | 2023-04-28 |
发明(设计)人: | 孙瑞浩;石立宪 | 申请(专利权)人: | 中信银行股份有限公司 |
主分类号: | H04L69/16 | 分类号: | H04L69/16;G06F9/54 |
代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
地址: | 100020 北京市朝阳区光*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 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事件,并连接服务器的进程;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中信银行股份有限公司,未经中信银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110333964.8/2.html,转载请声明来源钻瓜专利网。