[发明专利]一种基于socket连接的数据传输方法有效
申请号: | 202011618337.0 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112751933B | 公开(公告)日: | 2023-05-05 |
发明(设计)人: | 李虎;曾毅峰;魏明丽;戚荣荣 | 申请(专利权)人: | 上海浦东发展银行股份有限公司 |
主分类号: | H04L67/141 | 分类号: | H04L67/141;H04L69/16 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 林君如 |
地址: | 200002 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 socket 连接 数据传输 方法 | ||
本发明涉及一种基于socket连接的数据传输方法,包括以下步骤:构建socket对象连接池,创建多个socket对象放入连接池中;初始化连接池中多个socket对象,并保持连接状态;当需要执行数据传输任务时,则检查连接池是否已被初始化,若检查判断为是,则根据数据传输任务的数量,从连接池中对应取出socket对象,通过socket对象完成对应任务的数据传输,待数据传输完成后,将该socket对象返回至连接池中,否则返回重新初始化。与现有技术相比,本发明通过将多个socket对象放入连接池中,并对socket对象进行初始化、使socket对象保持连接状态,能够适用于高并发场景下的多数据传输任务,实现持续有效发送数据的目的,且在并发低时,能够低功耗运行,不占用过多资源。
技术领域
本发明涉及计算机通信及软件技术领域,尤其是涉及一种基于socket连接的数据传输方法。
背景技术
在以TCP协议为主的传输协议中,socket(套接字)是TCP/IP传输的具体实现方式,socket对TCP/IP进行了抽象,通过形成几个基本的函数接口,以实现数据传输,基于此,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。
在socket实现过程中,传统多数使用socket短连接,即在有数据需要交互时,建立一个TCP连接,数据完成发送后则断开此TCP连接。这一过程中,需要进行TCP的三次握手和四次挥手,一次TCP请求的建立以及关闭则至少需要7次通信,这还不包括数据的通信。因此Socket短连接开销较大且数据传输速率较慢,不适用于高并发场景。
为此,在socket短连接基础上,出现了socket长连接机制,以实现在一个TCP连接上可以连续发送多个数据包的目的,在TCP连接保持期间,如果没有数据包发送,则需要发送检测包以维持此连接。socket长连接能够有效改善socket短连接的不足,在频繁操作、点对点通讯中能够发挥重要作用。但是socket长连接由于只有一个连接,在性能方面,还是不能支持高并发场景。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于socket连接的数据传输方法,以适用于高并发场景,且能保证数据高效传输。
本发明的目的可以通过以下技术方案来实现:一种基于socket连接的数据传输方法,包括以下步骤:
S1、构建socket对象连接池,创建多个socket对象放入连接池中;
S2、初始化连接池中多个socket对象,并保持连接状态;
S3、当需要执行数据传输任务时,则检查连接池是否已被初始化,若检查判断为是,则执行步骤S4,否则返回步骤S2重新初始化;
S4、根据数据传输任务的数量,从连接池中对应取出socket对象,通过socket对象完成对应任务的数据传输,待数据传输完成后,将该socket对象返回至连接池中。
进一步地,所述连接池具体为GenericObjectPool对象池。
进一步地,所述连接池中socket对象的数量大于或等于5。
进一步地,所述步骤S1在构建socket对象连接池时,分别设置资源耗尽阻塞属性、获取资源时阻塞的最大时间、最小空闲连接数、最大空闲连接数、最大活跃连接数、逐出连接的最小空闲时间、运行逐出线程、逐出扫描时间间隔、回收空闲连接数以及对象连接有效性检测线程。
进一步地,所述对象连接有效性检测线程具体是在创建socket对象时关闭;在获取socket对象时开启;在清理空闲对象时,仅针对未过期的socket对象开启;在返回socket对象时开启。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海浦东发展银行股份有限公司,未经上海浦东发展银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011618337.0/2.html,转载请声明来源钻瓜专利网。