交易请求发送方法及装置制造方法及图纸

技术编号:32539903 阅读:12 留言:0更新日期:2022-03-05 11:36
本发明专利技术公开了一种交易请求发送方法及装置,涉及移动互联技术领域,其中该方法包括:将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。这样,存在多条链路,在一条链路发送交易请求的同时,其它未发送交易请求的链路也可以发送交易请求,适用于交易请求高并发的场景,且优先使用吞吐量较大的链路进行发送,提高交易请求的发送效率。率。率。

【技术实现步骤摘要】
交易请求发送方法及装置


[0001]本专利技术涉及移动互联
,尤其涉及交易请求发送方法及装置。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]HTTP/2协议是一种新型的协议,Netty是一个基于Java NIO的客户端、服务器端的开源编程框架,其中提供了HTTP/2协议的支持。但是其仅仅提供了报文封装层面的支持。例如,对于一个字符串文本或二进制文本,Netty提供了把这个文本封装为HTTP/2协议的实现,所实现的HTTP/2协议也仅仅是一个串行的协议,无法充分利用HTTP/2协议的并行特点。也即只能将封装成HTTP/2协议的交易请求串行发送,无法应对交易请求高并发场景的需求,基于HTTP/2协议的交易请求发送效率低。

技术实现思路

[0004]本专利技术实施例提供一种交易请求发送方法,用以并行发送基于HTTP/2协议的交易请求,且优先吞吐量较大的链路进行发送,提高交易请求的发送效率,该方法包括:
[0005]将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;
[0006]从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;
[0007]利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。
[0008]本专利技术实施例还提供一种交易请求发送装置,用以并行发送基于HTTP/2协议的交易请求,且优先吞吐量较大的链路进行发送,提高交易请求的发送效率,该装置包括:
[0009]链路建立模块,用于将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;
[0010]第一处理模块,用于从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;
[0011]发送模块,用于利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。
[0012]本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述交易请求发送方法。
[0013]本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述交易请求发送方法。
[0014]本专利技术实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程
序,所述计算机程序被处理器执行时实现上述交易请求发送方法。
[0015]本专利技术实施例中,将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。这样,存在多条链路,在一条链路发送交易请求的同时,其它未发送交易请求的链路也可以发送交易请求,适用于交易请求高并发的场景,且优先使用吞吐量较大的链路进行发送,提高交易请求的发送效率。
附图说明
[0016]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0017]图1为本专利技术实施例中提供的一种交易请求发送方法的流程图;
[0018]图2为本专利技术实施例中提供的一种从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路的方法流程图;
[0019]图3为本专利技术实施例中提供的一种利用所述第一链路向服务器发送交易请求的方法流程图;
[0020]图4为本专利技术实施例中提供的一种交易请求发送装置的示意图;
[0021]图5为本专利技术实施例中提供的一种计算机设备的示意图。
具体实施方式
[0022]为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。
[0023]本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
[0024]在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
[0025]经研究发现,HTTP/2协议是一种新型的协议,Netty是一个基于Java NIO的客户端、服务器端的开源编程框架,其中提供了HTTP/2协议的支持。但是其仅仅提供了报文封装层面的支持。例如,对于一个字符串文本或二进制文本,Netty提供了把这个文本封装为
HTTP/2协议的实现,所实现的HTTP/2协议也仅仅是一个串行的协议,无法充分利用HTTP/2协议的并行特点。也即只能将封装成HTTP/2协议的交易请求串行发送,无法应对交易请求高并发场景的需求,基于HTTP/2协议的交易请求发送效率低。
[0026]针对上述研究,本专利技术实施例提供一种交易请求发送方法,如图1所示,包括:
[0027]S101:将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;
[0028]S102:从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;
[0029]S103:利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。
[0030]本专利技术实施例中,将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。这样,存在多条链路,在一条链路发送交易请求的同时,其它未发本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种交易请求发送方法,其特征在于,包括:将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程上建立一条链路;从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路;利用所述第一链路向服务器发送交易请求;其中,所述交易请求为基于HTTP/2协议的交易请求。2.如权利要求1所述的交易请求发送方法,其特征在于,从所述多个线程分别对应的链路中确定出没有发送交易请求且吞吐量大于预设阈值的第一链路,包括:从所述多个线程分别对应的链路中确定出没有发送交易请求的第二链路;利用第二链路向服务器发送探测包,接收服务器根据所述探测包反馈的第一反馈信息;根据所述探测包中包含的数据量、以及每一第二链路从发射探测报到接收到反馈信息的时长,得到每一第二链路分别对应的吞吐量;从第二链路中确定出吞吐量大于预设阈值的第一链路。3.如权利要求1所述的交易请求发送方法,其特征在于,利用所述第一链路向服务器发送交易请求,包括:将所述第一链路的状态标记为正在发送交易请求,根据所述第一链路每次发送的数据量、以及待发送交易请求中包含的数据量,得到第一链路发送交易请求的预计发送次数;在所述第一链路对交易请求的发送次数等于所述预计发送次数时,将所述第一链路的状态标记为没有发送交易请求。4.如权利要求1所述的交易请求发送方法,其特征在于,还包括:每隔第一预设时长,利用没有发送交易请求的第二链路发送探测包,针对无法在第二预设时长内接收到服务器反馈的第二反馈信息的第二链路,在该第二链路对应的线程上重新建立一个新链路;针对正在发送交易请求的第三链路,在发送交易请求后的第二预设时长内没有接收到服务器反馈的第三反馈信息后,在该第三链路对应的线程上重新建立一个新链路,并利用新链路重新发送最近一次发送的交易请求。5.如权利要求1所述的交易请求发送方法,其特征在于,交易请求中还包括:交易标识;利用所述第一链路向服务器发送要发送的交易请求之后,还包括:利用空闲的链路接收服务器根据交易请求返回的响应数据;其中,响应数据中包含交易请求对应的交易标识;其中,空闲链路包括当前没有发送交易请求的链路;根据响应数据中携带的交易标识确定响应数据对应的交易请求,将响应数据发送给发起交易请求的用户。6.如权利要求1所述的交易请求发送方法,其特征在于,将响应数据发送给发起对应交易请求的用户,包括:从响应数据中提取返回码、以及返回信息,将返回码、返回信息封装在一起发送给发起对应交易请求的用户。7.一种交易请求发送装置,其特征在于,包括:链路建立模块,用于将基于HTTP/2协议的客户端程序运行在多个线程上,在每一线程
上建立一条链路;第一处理模块,用于从所述多个线程分别对应的链路中确...

【专利技术属性】
技术研发人员:王硕
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1