一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种针对三方接口服务的资源管理方法及系统与流程

2021-11-06 00:21:00 来源:中国专利 TAG:


1.本发明涉及接口领域,尤其涉及一种针对三方接口服务的资源管理方法及系统。


背景技术:

2.在实际生产中,很多功能产品会存在需要对接大量三方接口服务的场景,每个三方接口服务的稳定性、吞吐能力等差异较大,而这些三方接口服务共享了我们给系统服务分配的计算机资源。管理这些三方接口服务对计算机资源的使用来保证系统服务的相对稳定是我们必须要面对的问题,管理的对象主要包括线程资源(计算机系统的进程)、tcp连接资源,管理的目的主要包括资源隔离、服务降级及限流、资源复用。提到资源隔离、服务降级及限流,通常会想到hystrix、sentinel,针对三方接口服务的资源复用,标准的处理方法是http连接池。所以,要实现三方接口服务的资源管理方案,常规的方案是hystrix http连接池或者sentinel http连接池,两种方案是等价的。
3.但本技术发明人在实现本技术实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
4.现有池化技术实现资源管理存在明显重复,需要额外的线程池去做线程池的资源管理及隔离,且两种池化技术的配合使用增加了复杂度的技术问题。


技术实现要素:

5.本技术实施例通过提供一种针对三方接口服务的资源管理方法及系统,解决了现有池化技术实现资源管理存在明显重复,需要额外的线程池去做线程池的资源管理及隔离,且两种池化技术的配合使用增加了复杂度的技术问题,达到对三方接口服务进行有效的资源管理,实现资源隔离、调用服务耗时过长时快速降级释放入口线程资源,保证系统服务的稳定运行,通过一种池化技术实现资源管理,解决三方接口服务的资源复用、资源隔离、服务降级及限流问题,降低复杂度,且学习及实施成本均大大降低的技术效果。
6.鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的方法。
7.第一方面,本技术实施例提供了一种针对三方接口服务的资源管理方法,所述方法包括:获得三方接口服务的基础信息;根据所述基础信息获得所述三方接口服务的最大并发量;获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;获得http连接池的第一队列长度;根据所述第一配置参数和所述第一队列长度获得第二配置参数;通过所述第二配置参数对所述三方接口服务进行管理。
8.另一方面,本技术还提供了一种针对三方接口服务的资源管理系统,所述系统包括:第一获得单元,所述第一获得单元用于获得三方接口服务的基础信息;第二获得单元,所述第二获得单元用于根据所述基础信息获得所述三方接口服务的最大并发量;第三获得单元,所述第三获得单元用于获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;第四获得单元,所述第四获得单元用于获得http
连接池的第一队列长度;第五获得单元,所述第五获得单元用于根据所述第一配置参数和所述第一队列长度获得第二配置参数;第一管理单元,所述第一管理单元用于通过所述第二配置参数对所述三方接口服务进行管理。
9.第三方面,本发明实施例提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述收发器、所述存储器和所述处理器通过所述总线相连,所述计算机程序被所述处理器执行时实现上述任意一项所述的控制输出数据的方法中的步骤。
10.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的控制输出数据的方法中的步骤。
11.本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
12.由于采用了获得三方接口服务的基础信息;根据所述基础信息获得所述三方接口服务的最大并发量;获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;获得http连接池的第一队列长度;根据所述第一配置参数和所述第一队列长度获得第二配置参数;通过所述第二配置参数对所述三方接口服务进行管理。进而达到对三方接口服务进行有效的资源管理,实现资源隔离、调用服务耗时过长时快速降级释放入口线程资源,保证系统服务的稳定运行,通过一种池化技术实现资源管理,解决三方接口服务的资源复用、资源隔离、服务降级及限流问题,降低复杂度,且学习及实施成本均大大降低的技术效果。
13.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
14.图1为本技术实施例一种针对三方接口服务的资源管理方法的流程示意图;
15.图2为本技术实施例一种针对三方接口服务的资源管理方法中获得http连接池的第一队列长度的流程示意图;
16.图3为本技术实施例一种针对三方接口服务的资源管理方法中获得所述第一队列长度的流程示意图;
17.图4为本技术实施例一种针对三方接口服务的资源管理方法中获得所述第一队列长度计算公式的流程示意图;
18.图5为本技术实施例一种针对三方接口服务的资源管理方法中获得第一错误指令的流程示意图;
19.图6为本技术实施例一种针对三方接口服务的资源管理方法中对所述三方接口服务进行管理的流程示意图;
20.图7为本技术实施例一种针对三方接口服务的资源管理系统的结构示意图;
21.图8为本技术实施例所提供的一种用于执行控制输出数据的方法的电子设备的结构示意图。
22.附图标记说明:第一获得单元11,第二获得单元12,第三获得单元13,第四获得单
元14,第五获得单元15,第一管理单元16,总线1110,处理器1120,收发器1130,总线接口1140,存储器1150和用户接口1160。
具体实施方式
23.在本发明实施例的描述中,所属技术领域的技术人员应当知道,本发明实施例可以实现为方法、装置、电子设备及计算机可读存储介质。因此,本发明实施例可以具体实现为以下形式:完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、硬件和软件结合的形式。此外,在一些实施例中,本发明实施例还可以实现为在一个或多个计算机可读存储介质中的计算机程序产品的形式,该计算机可读存储介质中包含计算机程序代码。
24.上述计算机可读存储介质可以采用一个或多个计算机可读存储介质的任意组合。计算机可读存储介质包括:电、磁、光、电磁、红外或半导体的系统、装置或器件,或者以上任意的组合。计算机可读存储介质更具体的例子包括:便携式计算机磁盘、硬盘、随机存取存储器、只读存储器、可擦除可编程只读存储器、闪存、光纤、光盘只读存储器、光存储器件、磁存储器件或以上任意组合。在本发明实施例中,计算机可读存储介质可以是任意包含或存储程序的有形介质,该程序可以被指令执行系统、装置、器件使用或与其结合使用。
25.申请概述
26.本发明实施例通过流程图和/或方框图描述所提供的方法、装置、电子设备。
27.应当理解,流程图和/或方框图的每个方框以及流程图和/或方框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机可读程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或方框图中的方框规定的功能/操作的装置。
28.也可以将这些计算机可读程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读存储介质中。这样,存储在计算机可读存储介质中的指令就产生出一个包括实现流程图和/或方框图中的方框规定的功能/操作的指令装置产品。
29.也可以将计算机可读程序指令加载到计算机、其他可编程数据处理装置或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程数据处理装置上执行的指令能够提供实现流程图和/或方框图中的方框规定的功能/操作的过程。
30.下面结合本发明实施例中的附图对本发明实施例进行描述。
31.实施例一
32.如图1所示,本技术实施例提供了一种针对三方接口服务的资源管理方法,其中,所述方法包括:
33.步骤s100:获得三方接口服务的基础信息;
34.步骤s200:根据所述基础信息获得所述三方接口服务的最大并发量;
35.步骤s300:获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;
36.具体而言,所述三方接口服务的基础信息为三方接口服务的性能特点及访问量,包括实际生产中的监控信息,针对每个三方接口服务,根据三方接口服务的性能特点及访
问量,获得所述三方接口服务的最大并发量,即同时访问服务器站点的连接数,在投产之前一般为预估值,后续可以动态调整。根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数,即最大连接数配置。举例而言,调用某个三方接口服务最大并发量为50,为了应对业务增长或突发流量,我们可以冗余地将连接池的最大连接数配置为最大并发数的3倍,即设为150。
37.步骤s400:获得http连接池的第一队列长度;
38.如图2所示,进一步而言,其中,所述获得http连接池的第一队列长度,本技术实施例步骤s400还包括:
39.步骤s410:获得所述三方接口服务的第一等待时间;
40.步骤s420:根据所述第一等待时间获得所述第一队列长度。
41.具体而言,使用http连接池的时候,除最大连接数范围内的连接会同时占用入口线程外,还要考虑等待获取连接的队列中的请求也会占用入口线程。队列长度的理论近似值为等待时间内接收到的请求数,证明资源占用可控。所述三方接口服务的第一等待时间是从连接池获取连接的等待时间,是所述第一队列长度的影响参数,影响最终的队列长度值。统一设置从连接池中获取连接的等待时间,由于已冗余设置了最大连接数,如果有请求进入等待,认为这是三方接口服务响应较慢,需要被限制流量,快速失败以释放入口线程,所以这个等待时间需要设置得小点。如果有必要,可以直接修改等待时间这一参数值,达到对队列长度值计算更加准确,从而对计算机资源进行管理的技术效果。
42.步骤s500:根据所述第一配置参数和所述第一队列长度获得第二配置参数;
43.具体而言,根据所述第一配置参数和所述第一队列长度获得第二配置参数,通过所述第二配置参数对所述三方接口服务进行管理,即访问量最大的三方接口服务最多会占用的入口线程数为最大连接数配置 队列长度值。
44.步骤s600:通过所述第二配置参数对所述三方接口服务进行管理。
45.如图6所示,进一步而言,其中,所述通过所述第二配置参数对所述三方接口服务进行管理,本技术实施例步骤s600还包括:
46.步骤s610:通过所述第二配置参数配置第一http连接池;
47.步骤s620:将所述第一http连接池与所述三方接口服务进行绑定;
48.步骤s630:通过所述第一http连接池对所述三方接口服务进行管理。
49.具体而言,通过所述第二配置参数配置设置第一http连接池的参数,因为每个三方接口服务独享一个连接池,所以每路由最大连接数设置与连接池的最大连接数设置值一致,均取maxtotal值。将所述第一http连接池与所述三方接口服务进行绑定,通过所述第一http连接池对所述三方接口服务进行管理,即使用http连接池技术实现资源管理。从而达到通过仅使用http连接池技术实现资源管理,降低复杂度,保证系统服务的稳定运行的技术效果。
50.如图3所示,进一步而言,本技术实施例步骤s420还包括:
51.步骤s421:获得所述三方接口服务的每秒请求数;
52.步骤s422:根据所述第一等待时间和所述每秒请求数,获得所述第一队列长度。
53.具体而言,队列长度的理论近似值为等待时间内接收到的请求数,所述三方接口服务的每秒请求数是需要每秒进行处理的请求数,是所述第一队列长度的影响参数,影响
最终的队列长度值,达到对队列长度值计算更加准确,从而对计算机资源进行管理的技术效果。
54.如图4所示,进一步而言,其中,所述根据所述第一等待时间和所述每秒请求数,获得所述第一队列长度,本技术实施例步骤s422还包括:
55.步骤s4221:通过公式计算获得所述第一队列长度,计算公式如下:
56.l=at
57.其中,l为所述第一队列长度,a为每秒请求数,t为第一等待时间。
58.具体而言,所述第一队列长度值的计算公式为所述每秒请求数和所述第一等待时间的乘积,例如,访问量最大的三方接口服务的每秒请求数为60(这个值一般是历史统计中最大值的2~3倍,冗余是为了应对业务增长和突发流量),统一设置从连接池中获取连接的等待时间(配置中的connectionrequesttimeout)为100毫秒。对于上述两个参数值,我们可以通过队列长度值计算公式l=at,将参数数值输入即60*100毫秒/1秒计算得出理论队列长度为6,达到后续对入口线程数的确定更加准确,从而对计算机资源进行管理的技术效果。
59.如图5所示,进一步而言,本技术实施例步骤s420还包括:
60.步骤s423:获得第一预定请求时间阈值;
61.步骤s424:判断所述第一等待时间是否满足所述第一预定请求时间阈值;
62.步骤s425:当所述第一等待时间满足所述第一预定请求时间阈值时,获得第一错误指令;
63.步骤s426:根据所述第一错误指令对所述三方接口服务进行管理。
64.具体而言,所述第一预定请求时间阈值为预设等待请求时间的范围大小,如超出时间阈值范围,会因请求时间过长导致结果错误。判断所述第一等待时间是否满足所述第一预定请求时间阈值,当所述第一等待时间满足所述第一预定请求时间阈值时,即请求时间超出预设范围,获得第一错误指令,因为队列长度的理论近似值为等待时间内接收到的请求数,但是超过这个时间的请求会快速失败返回错误。根据所述第一错误指令对所述第一三方接口服务进行管理,即请求失败,会快速释放资源,不会因超时而大量长期占用。达到请求超时不会占用服务资源,保证系统服务的稳定运行的技术效果。
65.综上所述,本技术实施例所提供的一种针对三方接口服务的资源管理方法及系统具有如下技术效果:
66.由于采用了获得三方接口服务的基础信息;根据所述基础信息获得所述三方接口服务的最大并发量;获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;获得http连接池的第一队列长度;根据所述第一配置参数和所述第一队列长度获得第二配置参数;通过所述第二配置参数对所述三方接口服务进行管理。进而达到对三方接口服务进行有效的资源管理,实现资源隔离、调用服务耗时过长时快速降级释放入口线程资源,保证系统服务的稳定运行,通过一种池化技术实现资源管理,解决三方接口服务的资源复用、资源隔离、服务降级及限流问题,降低复杂度,且学习及实施成本均大大降低的技术效果。
67.实施例二
68.基于与前述实施例中一种针对三方接口服务的资源管理方法同样发明构思,本发
明还提供了一种针对三方接口服务的资源管理系统,如图7所示,所述系统包括:
69.第一获得单元11,所述第一获得单元11用于获得三方接口服务的基础信息;
70.第二获得单元12,所述第二获得单元12用于根据所述基础信息获得所述三方接口服务的最大并发量;
71.第三获得单元13,所述第三获得单元13用于获得第一配置扩充指令,根据所述第一配置扩充指令将所述最大并发量进行扩充,获得第一配置参数;
72.第四获得单元14,所述第四获得单元14用于获得http连接池的第一队列长度;
73.第五获得单元15,所述第五获得单元15用于根据所述第一配置参数和所述第一队列长度获得第二配置参数;
74.第一管理单元16,所述第一管理单元16用于通过所述第二配置参数对所述三方接口服务进行管理。
75.进一步的,所述系统还包括:
76.第六获得单元,所述第六获得单元用于获得所述三方接口服务的第一等待时间;
77.第七获得单元,所述第七获得单元用于根据所述第一等待时间获得所述第一队列长度。
78.进一步的,所述系统还包括:
79.第八获得单元,所述第八获得单元用于获得所述三方接口服务的每秒请求数;
80.第九获得单元,所述第九获得单元用于根据所述第一等待时间和所述每秒请求数,获得所述第一队列长度。
81.进一步的,所述系统还包括:
82.第一计算单元,所述第一计算单元用于通过公式计算获得所述第一队列长度。
83.进一步的,所述系统还包括:
84.第十获得单元,所述第十获得单元用于获得第一预定请求时间阈值;
85.第一判断单元,所述第一判断单元用于判断所述第一等待时间是否满足所述第一预定请求时间阈值;
86.第十一获得单元,所述第十一获得单元用于当所述第一等待时间满足所述第一预定请求时间阈值时,获得第一错误指令;
87.第二管理单元,所述第二管理单元用于根据所述第一错误指令对所述三方接口服务进行管理。
88.进一步的,所述系统还包括:
89.第一配置单元,所述第一配置单元用于通过所述第二配置参数配置第一http连接池;
90.第一绑定单元,所述第一绑定单元用于将所述第一http连接池与所述三方接口服务进行绑定;
91.第三管理单元,所述第三管理单元用于通过所述第一http连接池对所述三方接口服务进行管理。
92.前述图1实施例一中的一种针对三方接口服务的资源管理方法的各种变化方式和具体实例同样适用于本实施例的一种针对三方接口服务的资源管理系统,通过前述对一种针对三方接口服务的资源管理方法的详细描述,本领域技术人员可以清楚的知道本实施例
中一种针对三方接口服务的资源管理系统的实施方法,所以为了说明书的简洁,在此不再详述。
93.此外,本发明实施例还提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该收发器、该存储器和处理器分别通过总线相连,计算机程序被处理器执行时实现上述控制输出数据的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
94.示例性电子设备
95.具体的,参见图8所示,本发明实施例还提供了一种电子设备,该电子设备包括总线1110、处理器1120、收发器1130、总线接口1140、存储器1150和用户接口1160。
96.在本发明实施例中,该电子设备还包括:存储在存储器1150上并可在处理器1120上运行的计算机程序,计算机程序被处理器1120执行时实现上述控制输出数据的方法实施例的各个过程。
97.收发器1130,用于在处理器1120的控制下接收和发送数据。
98.本发明实施例中,总线架构(用总线1110来代表),总线1110可以包括任意数量互联的总线和桥,总线1110将包括由处理器1120代表的一个或多个处理器与存储器1150代表的存储器的各种电路连接在一起。
99.总线1110表示若干类型的总线结构中的任何一种总线结构中的一个或多个,包括存储器总线以及存储器控制器、外围总线、加速图形端口、处理器或使用各种总线体系结构中的任意总线结构的局域总线。作为示例而非限制,这样的体系结构包括:工业标准体系结构总线、微通道体系结构总线、扩展总线、视频电子标准协会、外围部件互连总线。
100.处理器1120可以是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中硬件的集成逻辑电路或软件形式的指令完成。上述的处理器包括:通用处理器、中央处理器、网络处理器、数字信号处理器、专用集成电路、现场可编程门阵列、复杂可编程逻辑器件、可编程逻辑阵列、微控制单元或其他可编程逻辑器件、分立门、晶体管逻辑器件、分立硬件组件。可以实现或执行本发明实施例中公开的各方法、步骤及逻辑框图。例如,处理器可以是单核处理器或多核处理器,处理器可以集成于单颗芯片或位于多颗不同的芯片。
101.处理器1120可以是微处理器或任何常规的处理器。结合本发明实施例所公开的方法步骤可以直接由硬件译码处理器执行完成,或者由译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器、闪存、只读存储器、可编程只读存储器、可擦除可编程只读存储器、寄存器等本领域公知的可读存储介质中。所述可读存储介质位于存储器中,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
102.总线1110还可以将,例如外围设备、稳压器或功率管理电路等各种其他电路连接在一起,总线接口1140在总线1110和收发器1130之间提供接口,这些都是本领域所公知的。因此,本发明实施例不再对其进行进一步描述。
103.收发器1130可以是一个元件,也可以是多个元件,例如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发器1130从其他设备接收外部数据,收发器1130用于将处理器1120处理后的数据发送给其他设备。取决于计算机系统的性质,还可以提供用户接口1160,例如:触摸屏、物理键盘、显示器、鼠标、扬声器、麦克风、轨迹
球、操纵杆、触控笔。
104.应理解,在本发明实施例中,存储器1150可进一步包括相对于处理器1120远程设置的存储器,这些远程设置的存储器可以通过网络连接至服务器。上述网络的一个或多个部分可以是自组织网络、内联网、外联网、虚拟专用网、局域网、无线局域网、广域网、无线广域网、城域网、互联网、公共交换电话网、普通老式电话业务网、蜂窝电话网、无线网络、无线保真网络以及两个或更多个上述网络的组合。例如,蜂窝电话网和无线网络可以是全球移动通信系统、码分多址系统、全球微波互联接入系统、通用分组无线业务系统、宽带码分多址系统、长期演进系统、lte频分双工系统、lte时分双工系统、先进长期演进系统、通用移动通信系统、增强移动宽带系统、海量机器类通信系统、超可靠低时延通信系统等。
105.应理解,本发明实施例中的存储器1150可以是易失性存储器或非易失性存储器,或可包括易失性存储器和非易失性存储器两者。其中,非易失性存储器包括:只读存储器、可编程只读存储器、可擦除可编程只读存储器、电可擦除可编程只读存储器,或闪存。
106.易失性存储器包括:随机存取存储器,其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如:静态随机存取存储器、动态随机存取存储器、同步动态随机存取存储器、双倍数据速率同步动态随机存取存储器、增强型同步动态随机存取存储器、同步连接动态随机存取存储器和直接内存总线随机存取存储器。本发明实施例描述的电子设备的存储器1150包括但不限于上述和任意其他适合类型的存储器。
107.在本发明实施例中,存储器1150存储了操作系统1151和应用程序1152的如下元素:可执行模块、数据结构,或者其子集,或者其扩展集。
108.具体而言,操作系统1151包含各种系统程序,例如:框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序1152包含各种应用程序,例如:媒体播放器、浏览器,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序1152中。应用程序1152包括:小程序、对象、组件、逻辑、数据结构以及其他执行特定任务或实现特定抽象数据类型的计算机系统可执行指令。
109.此外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述控制输出数据的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
110.以上所述,仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例披露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献