外部业务数据的交互方法、装置、设备及存储介质与流程

文档序号:32306094发布日期:2022-11-23 10:01阅读:73来源:国知局
外部业务数据的交互方法、装置、设备及存储介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种外部业务数据的交互方法、装置、设备及存储介质。


背景技术:

2.数据开放平台对外提供接口,通过这些接口与外部数据平台进行业务对接。相关技术中,与不同的外部数据平台进行不同业务的对接交互时,对于不同的外部数据平台均开发不同的接口程序。随着需对接的外部数据平台越来越多,会导致出现大量的冗余代码,开发工作量很大,开发成本很高。
3.申请内容
4.基于此,本技术提供一种外部业务数据的交互方法、装置、设备及存储介质,提高外部数据平台接入的安全性和高效性。
5.第一方面,提供了一种外部业务数据的交互方法,包括:
6.监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成所述第一外部数据平台对应的接口脚本;
7.基于所述第一外部数据平台对应的接口脚本,通过预设安全策略对所述第一外部数据平台进行安全监控,所述预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一;
8.若所述第一外部数据平台满足安全条件,接收到所述第一外部数据平台的业务请求,则确定所述业务请求对应的业务信息是否满足所述业务请求对应的预设业务需求条件;
9.若满足所述预设业务需求条件,则根据所述业务信息,对所述业务请求进行处理,并向所述第一外部数据平台返回处理结果。
10.第二方面,提供了一种外部业务数据的交互装置,包括:
11.接口脚本生成模块,用于监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成所述第一外部数据平台对应的接口脚本;
12.安全监控模块,用于基于所述第一外部数据平台对应的接口脚本,通过预设安全策略对所述第一外部数据平台进行安全监控,所述预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一;
13.业务数据校验模块,用于若所述第一外部数据平台满足安全条件,接收到所述第一外部数据平台的业务请求,则确定所述业务请求对应的业务信息是否满足所述业务请求对应的预设业务需求条件;
14.响应业务请求模块,用于若满足所述预设业务需求条件,则根据所述业务信息,对所述业务请求进行处理,并向所述第一外部数据平台返回处理结果。
15.第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一方面提供的外部业
务数据的交互方法。
16.第四方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述第一方面提供的外部业务数据的交互方法的步骤。
17.上述外部业务数据的交互方法、装置、计算机设备及存储介质所实现的方案中,在监测到新接入的第一外部数据平台时,调用预设的第二外部数据平台对应的接口脚本,利用第二外部数据平台对应的接口脚本来直接生成第一外部数据平台的接口脚本,无需重新开发第一外部数据平台的接口脚本,接口脚本的通用性强,能够减少冗余代码,有效节省开发时间,使得整体代码更加简洁、美观,减少了开发成本及维护成本。同时提高了外部数据平台接入的安全性和高效性,对于处理重试或数据回传场景也可以通用性处理,改善功能的自适应和拓展性。
附图说明
18.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
19.图1是本技术一实施例中一种外部业务数据的交互方法的一应用环境示意图;
20.图2是本技术一实施例中一种外部业务数据的交互方法的流程示意图;
21.图3是本技术一实施例中创建订单的交互方法的流程示意图;
22.图4是本技术一实施例中一种外部业务数据的交互装置的结构示意图;
23.图5是本技术一实施例中一种计算机设备的一结构示意图。
具体实施方式
24.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
25.本技术实施例提供的外部业务数据的交互方法,可应用在如图1的应用环境中,该应用环境中包括外部数据平台、网关和数据开放平台。其中,外部数据平台通过公网与网关通信连接,网关通过内网与数据开放平台通信连接。
26.外部数据平台可以为独立于数据开放平台之外的任一数据平台,在不同的应用场景中数据开放平台和外部数据平台可以为不同的数据平台。例如,在商品交易场景中,数据开放平台可以为商家的商品平台,外部数据平台可以为消费者的购物渠道平台。在物流场景中,数据开放平台可以为物流服务平台,外部数据平台可以为用于查询物流的数据平台。在医疗场景中,数据开放平台可以为智慧问诊平台、医疗平台、就医物联网平台、挂号平台、就医监管平台、慢病云平台、医院平台等等。外部数据平台可以为用于与医生建立问诊会话,供病人或患者家属使用的用户端平台,或者,外部数据平台可以为用于供医生使用的医护端平台,等等。数据开放平台也可以为能够提供多种服务的综合服务平台,该综合的数据
开放平台能够对接多种外部数据平台。
27.上述外部数据平台和数据开放平台均可以为一台或多台终端设备,或者为一台服务器设备或多台服务器设备组成的服务器集群等。本技术实施例的执行主体即为上述数据开放平台。
28.本技术实施例提供的外部业务数据的交互方法,可以应用于任意能够对外提供接口,并与外部数据平台进行交互的场景中。
29.请参阅图2所示,图2为本技术实施例提供的外部业务数据的交互方法的一个流程示意图,包括如下步骤:
30.s101:监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成第一外部数据平台对应的接口脚本。
31.本技术实施例的执行主体为图1中的数据开放平台,数据开放平台可以对外提供多个用于进行数据交互的接口,通过这些接口数据开放平台可以与一个或多个外部数据平台进行数据交互。数据开放平台可以同时与多个外部数据平台进行数据交互,也可以先后与多个外部数据平台进行数据交互。
32.如图1所示数据开放平台与网关位于内网,通过网关与处于外网中的外部数据平台通信连接。网关上设置有预设白名单,该预设白名单包括至少一个外网的出口网关地址或出口网关网段。当网关接收到来自外网的数据时,首先确定该外网的数据对应的出口网关地址或出口网关网段是否在预设白名单内,若在预设白名单内,则网关将该外网的数据转发给内网中的数据开放平台。若该外网的数据对应的出口网关地址或出口网关网段不在预设白名单内,则网关丢弃该外网的数据,不对该外网的数据进行转发处理。
33.在网关层设置白名单机制,只允许来自于信任的出口网关地址或出口网关网段的数据进入内网,提高与外部数据平台进行数据交互的安全性。
34.经过网关的白名单机制筛选,成功被转发的数据,是由内网的数据开放平台对外提供的接口进行对接的。在本技术实施例中,仅开发一个接口或少数几个接口的接口脚本,即可实现与任意的外部数据平台进行数据交互,无需为每个外部数据平台分别开发对应的接口脚本,大大减少了冗余代码,降低了开发成本,提高了接口脚本整体代码的通用性。
35.为了提高代码的通用性和有效节省开发的时间成本,本技术实施例设计一个抽象类,定义基本变量和方法,开发出具有一定通用性的接口脚本。在对接某个具体的外部数据平台时只需将该接口脚本中的配置信息修改为该具体的外部数据平台对应的配置信息即可。例如,若外部数据平台为某电商平台,则将接口脚本中的配置信息的参数设置为该电商平台的相应配置参数即可。
36.基于开发的接口脚本的通用性,在监测到新接入的第一外部数据平台时,调用预设的第二外部数据平台对应的接口脚本。预设的第二外部数据平台为数据开放平台之前接入的外部数据平台。利用第二外部数据平台对应的接口脚本来直接生成第一外部数据平台的接口脚本,无需重新开发第一外部数据平台的接口脚本,减少冗余代码,有效节省开发时间。
37.具体地,在监测到新接入的第一外部数据平台时,从接收到的第一外部数据平台的数据报文中,获取第一外部数据平台的标识信息,该标识信息可以为第一外部数据平台的渠道名或渠道编号等。根据该标识信息,将预设的第二外部数据平台对应的接口脚本中
的配置信息映射为第一外部数据平台的配置信息,得到第一外部数据平台对应的接口脚本。在本技术实施例中,上述第二外部数据平台对应的接口脚本是没有额外的方法调用的,没有额外的方法调用的接口脚本的通用性更高,仅通过修改配置信息即可迁移应用于对接不同的外部数据平台,减少了数据开放平台的冗余代码,使得整体代码更加简洁、美观,减少了开发成本及维护成本。
38.例如,第一外部数据平台发送的业务请求为订单创建请求时,由于之前对接其他外部数据平台的接口脚本中的接口参数都是定义好的,因此接收到第一外部数据平台的订单创建请求时,订单创建过程中的数据验证和数据封装等只需沿用同样的逻辑即可,如下代码所示,只需对之前的接口脚本进行配置映射即可完美衔接,在下述代码中getbean没有获取到适配类时,会从eagle配置中心获取。代码及注释如下所示:
39.//解析基本的bean对象信息
40.abstracttradeadapttadeadapt=applicationcontext.getbean(s:channelcode+constant.trade_ext)
41.if(null==tradeadapt){//对象信息为空,则从eagle获取配置信息;map《string,normaltradeadapt》tradeadaptmap=eagleconfig.tradeadaptmap;
42.//获取当前渠道的配置对象;
43.tradeadapt=tradeadaptmap.get(channelcode);
44.if(null==tradeadapt){//如果为空,那么就是非法channelcode;
45.throw new bizexception(corperrorcode.system_error,“非法channelcode:”+channelcode)
46.通过上述代码及注释能够更加直观地看出,本技术实施例的接口脚本具有很强的通用性,在有新的外部数据平台接入时,只需要修改接口脚本中的配置信息即可,有效解决了代码冗余的问题,提高了开发效率,降低了开发成本。
47.s102:基于第一外部数据平台对应的接口脚本,通过预设安全策略对第一外部数据平台进行安全监控,预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一。
48.通过步骤s101生成第一外部数据平台对应的接口脚本之后,即可通过该接口脚本与第一外部数据平台进行数据交互。为了提高与外部数据平台进行数据交互的安全性,在接口脚本中设置了预设安全策略,该预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一。
49.基于第一外部数据平台对应的接口脚本,通过预设安全策略对第一外部数据平台进行安全监控。具体地,基于第一外部数据平台对应的接口脚本获取第一外部数据平台的平台相关信息。在一些实施例中,该平台相关信息可以包括第一外部数据平台的数据流量,通过预设限流组件确定第一外部数据平台的数据流量是否大于限流策略规定的预设流量阈值。预设限流组件可以为sentinel组件或其他能够实现限流功能的组件。对外部数据平台进行限流,避免某个外部数据平台的数据流量过大而影响处理速度。
50.在另一些实施例中,平台相关信息可以包括第一外部数据平台的渠道名,确定第一外部数据平台的渠道名是否属于白名单策略中的预设渠道白名单。其中,预设渠道白名单中包括一个或多个申请通过的渠道名。如此确保只与申请通过的渠道名对应的外部数据
平台进行数据交互,避免与未申请通过的渠道进行交互带来的风险。
51.在另一些实施例中,平台相关信息可以包括第一外部数据平台的链路信息,通过业务链路监控策略监控链路信息所反映的数据传输是否出现预设异常情况。其中,链路信息包括第一外部数据平台与数据开放平台之间通信链路上的任意信息,如数据流量、连接是否断开等信息。预设异常情况包括通信连接断开、数据流量变化异常等。监控到出现异常情况时,还将异常情况通过邮件或短信等形式通知相关的业务负责人员。
52.上述基于限流策略、白名单策略和业务链路监控策略进行安全监控的具体过程可以都部署,也可以只部署其中的一个或多个的组合。通过对第一外部数据平台进行安全监控,提高了第一外部数据平台接入的安全性。
53.s103:若第一外部数据平台满足安全条件,接收到第一外部数据平台的业务请求,则确定业务请求对应的业务信息是否满足业务请求对应的预设业务需求条件。
54.通过步骤s102对第一外部数据平台进行安全监控,确定第一外部数据平台满足安全条件的情况下,若接收到第一外部数据平台的业务请求,则首先确定业务请求对应的业务信息是否满足业务请求对应的预设业务需求条件。
55.上述安全条件即包括数据流量小于等于预设流量阈值、第一外部数据平台属于已经申请通过的渠道、第一外部数据平台的数据传输未出现预设异常情况这三种条件中的一个或多个。
56.在不同业务场景下,业务请求、业务请求对应的业务信息以及预设业务需求条件均不相同。数据开放平台为外部数据平台提供不同接口,可以对接不同业务数据,如商品信息、物流信息或创建订单业务等。
57.以创建订单业务为例,第一外部数据平台发送的业务请求为订单创建请求,该订单创建请求包括商品标识,基于该商品标识获取对应的商品信息。该商品信息中包括商品是否存在、商品的上下架处理记录、商品类型、商品库存量、商品对应的门店是否存在、商品物流信息等。根据该订单创建请求对应的商品信息,确定商品信息包括的商品类型、商品库存量、商品物流信息中的至少之一是否满足订单创建的需求条件。具体确定商品是否存在,商品上下架的处理,以及商品类型是否为所需类型,商品库存量是否可以满足订单需求,以及确定商品对应门店是否存在,是否能保证正常发货,等等。
58.以及,还判断订单创建请求携带的商品维度字段是否大于预设数目。商品维度字段包括商品的各种属性维度。例如,手机的商品维度字段可以包括尺寸、内存、操作系统、处理器算力规格、电池容量、摄像头分辨率,等等。
59.本技术实施例还需要存储外部数据平台发送的业务请求及相应的处理数据,以便为后续提供查询服务,对于处理设备的业务请求还可以提供重试的基础数据。在有些厂家下商品维度字段过多的订单创建,可能会导致数据存储异常。因此需要对订单创建请求携带的商品维度字段进行校验,对于商品维度字段过多的订单创建请求,可以在第一外部数据平台中的下单入库设置限制,即第一外部数据平台检测到用户下单的商品对应的商品维度字段过多,则提示用户下单失败,并为用户推荐商品维度相对较少的替代商品。
60.或者,对于商品维度字段过多的订单创建请求,可以采用分布式存储方式进行存储,如采用tfs(taobao file system)进行存储。或者,对商品维度字段过多的订单创建请求进行压缩,将压缩文件存储在本地。
61.对于其他业务场景,同样对业务请求对应的业务信息进行数据校验,确定是否满足业务请求对应的预设业务需求条件,以确保该业务请求能够被成功地处理。
62.在本技术的另一些实施例中,在接收到第一外部数据平台发送的业务请求后,还为该业务请求分配状态标识,存储状态标识与业务请求的映射关系。若通过上述过程确定该业务请求对应的业务信息不满足预设业务需求条件,则每间隔预设时长重新确定业务信息是否满足预设业务需求条件。若重新确定预设次数均不满足预设业务需求条件,则将状态标识设置为预设失败标识。
63.重试的间隔时长以及预设次数可以根据不同业务场景的需求进行设定。每次重试的间隔时长可以相同,也可以不同。在每次重试的间隔时长不同的情况下,可以设置随着时间延长,重试的间隔时长越来越大。例如,第一次重试间隔2min,第二次重试间隔5min,第三次重试间隔10min,等等。
64.对经过多次重试仍然失败的业务请求设置预设失败标识,以便于后续查询这些处理失败的业务请求,对导致这些业务请求处理失败的原因进行修复,并对这些业务请求进行手动重试。
65.对于设置了预设失败标识的业务请求,用户(如业务负责人员)负责进行修复,修复之后进行手动重试。若检测到用户触发的预设失败标识对应的业务请求的重新确定任务,则创建重新确定任务对应的线程,将该线程添加到预设线程池中。基于分布式锁,控制预设线程池中来自于不同外部数据平台的业务请求对应的线程并行执行。
66.后台手动重试设计成线程池和分布式锁的结合,锁粒度为外部渠道,支持不同业务渠道的同时处理。通过手动修复并手动触发重试的方式,进一步提高了业务请求处理的成功率,对于不同业务渠道的手动重试,通过多线程并行的方式进行处理,提高处理效率。
67.s104:若满足预设业务需求条件,则根据业务信息,对业务请求进行处理,并向第一外部数据平台返回处理结果。
68.若通过步骤s104的操作,确定第一外部数据平台的业务请求对应的业务信息满足该业务请求对应的预设业务需求条件,则根据业务信息对该业务请求进行响应,并将处理结果返回给第一外部数据平台。
69.而且在整个处理过程中,数据开放平台还对其内部的消息队列及系统数据进行实时监听,监听到需要回传给第一外部数据平台的待回传数据,将待回传数据发送给第一外部数据平台。若待回传数据传输失败,则每间隔预设时长重新发送待回传数据给第一外部数据平台。若重新发送预设次数均传输失败,则将待回传数据与业务请求的映射关系记录在预设回传失败表中。
70.重传的间隔时长以及预设次数可以根据不同业务场景的需求进行设定。每次重试的间隔时长可以相同,也可以不同。在每次重试的间隔时长不同的情况下,可以设置随着时间延长,重试的间隔时长越来越大。例如,第一次重试间隔2min,第二次重试间隔5min,第三次重试间隔10min,等等。
71.在订单创建的业务场景下,待回传数据可以包括订单状态、退款消息、商品库存、优惠券消息等的实时通知。
72.通过对待回传数据进行监听,能够及时将待回传数据发送给外部数据平台。对于回传失败的数据,则可以通过二次或多次重传的机制来提高数据传输成功的概率。
73.对于向第一外部数据平台回传数据的所使用的程序代码,同样与接口脚本类似,代码尽量精简,适用性强。只需要对基类进行增强,无需修改其他代码,只通过简单的配置修改即可在不同的业务场景下实现数据回传或数据推送的功能。
74.为了便于理解本技术实施例提供的外部数据交互方法,下面以创建订单的业务场景为例,结合附图进行说明。如图3所示,其中ptc(partner center,伙伴交易中心)和tc(trading center,交易中心)共同构成内网中的数据开放平台,mq(message queue,消息队列)可以位于该数据开放平台中,也可以是位于独立于该数据开放平台的存储设备中。
75.下单整体流程包括数据交互(下单)、重试机制和数据回传三部分。在数据交互(下单)过程中,外部数据平台先发送数据给网关,网关依赖网关层的白名单机制,对外部数据平台的数据进行安全性校验及对不符合安全要求的数据进行拦截。经过网关的安全校验之后,外部数据平台的数据被发送到ptc进行创单前的基本校验,ptc的系统应用层中设置有限流组件,通过限流组件对外部数据平台的数据进行流量控制。且ptc中还设置有渠道白名单,只允许申请通过的渠道进行数据交互。确认外部数据平台属于申请通过的渠道之后,若接收到外部数据平台发送的下单请求,则ptc将该下单请求发送给tc。tc针对该下单请求进行限流控制,避免该下单请求携带的商品维度字段过多的情况。并根据该下单请求对对应的商品信息进行商品数据的通用处理,即进行数据校验。该数据校验过程的程序代码也能够支持自动化配置。tc数据校验通过后外该下单请求分配订单号,并将订单号发送给ptc。ptc接收到该订单号后,发送包括该订单号的订单信息给外部数据平台。
76.在重试机制部分,对于因各种原因下单失败的情况,ptc运行重试逻辑,该重试逻辑能够定时扫描异常数据,且设置了最大重试次数,能够支持订正数据后的手动重试。重试成功或失败之后,均将重试结果返回给外部数据平台。
77.在数据回传部分,ptc自动化初始子类,对监听的mq自动化同步。mq将监听到的待回传数据发送给ptc进行消息体解析,ptc将解析后的待回传数据发送给外部数据平台。在该数据回传部分,程序代码只需集成默认的抽象类即可。对于数据回传失败的情况也设置重试机制,重试间隔时长、重试次数可根据业务场景订制,且同一种数据的推送,是否需要重试,可根据使用场景定制。
78.在本技术实施例中,在监测到新接入的第一外部数据平台时,调用预设的第二外部数据平台对应的接口脚本,利用第二外部数据平台对应的接口脚本来直接生成第一外部数据平台的接口脚本,无需重新开发第一外部数据平台的接口脚本,接口脚本的通用性强,能够减少冗余代码,有效节省开发时间,使得整体代码更加简洁、美观,减少了开发成本及维护成本。同时提高了外部数据平台接入的安全性和高效性,对于处理重试或数据回传场景也可以通用性处理,改善功能的自适应和拓展性。
79.在一实施例中,提供一种外部业务数据的交互装置,该外部业务数据的交互装置与上述实施例中外部业务数据的交互方法一一对应。如图4所示,该装置包括接口脚本生成模块201、安全监控模块202、业务数据校验模块203和响应业务请求模块204。各功能模块详细说明如下:
80.接口脚本生成模块201,用于监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成第一外部数据平台对应的接口脚本;
81.安全监控模块202,用于基于第一外部数据平台对应的接口脚本,通过预设安全策
略对第一外部数据平台进行安全监控,预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一;
82.业务数据校验模块203,用于若第一外部数据平台满足安全条件,接收到第一外部数据平台的业务请求,则确定业务请求对应的业务信息是否满足业务请求对应的预设业务需求条件;
83.响应业务请求模块204,用于若满足预设业务需求条件,则根据业务信息,对业务请求进行处理,并向第一外部数据平台返回处理结果。
84.接口脚本生成模块201,用于获取第一外部数据平台的标识信息;根据标识信息,将预设的第二外部数据平台对应的接口脚本中的配置信息映射为第一外部数据平台的配置信息,得到第一外部数据平台对应的接口脚本。
85.安全监控模块202,用于基于第一外部数据平台对应的接口脚本获取第一外部数据平台的平台相关信息;平台相关信息包括第一外部数据平台的数据流量,通过预设限流组件确定数据流量是否大于限流策略规定的预设流量阈值;和/或,平台相关信息包括第一外部数据平台的渠道名,确定渠道名是否属于白名单策略中的预设渠道白名单;和/或,平台相关信息包括第一外部数据平台的链路信息,通过业务链路监控策略监控链路信息所反映的数据传输是否出现预设异常情况。
86.该装置还包括重试模块,用于为业务请求分配状态标识,存储状态标识与业务请求的映射关系;若业务请求对应的业务信息不满足预设业务需求条件,则每间隔预设时长重新确定业务信息是否满足预设业务需求条件;若重新确定预设次数均不满足所述预设业务需求条件,则将状态标识设置为预设失败标识。
87.重试模块,还用于检测到用户触发的预设失败标识对应的业务请求的重新确定任务,创建重新确定任务对应的线程;将线程添加到预设线程池中;基于分布式锁,控制预设线程池中来自于不同外部数据平台的业务请求对应的线程并行执行。
88.还包括:数据回传模块,用于监听需要回传给第一外部数据平台的待回传数据,将待回传数据发送给第一外部数据平台;若待回传数据传输失败,则每间隔预设时长重新发送待回传数据给第一外部数据平台;若重新发送预设次数均传输失败,则将待回传数据与业务请求的映射关系记录在预设回传失败表中。
89.业务请求为订单创建请求,业务数据校验模块203根据订单创建请求对应的商品信息,确定商品信息包括的商品类型、商品库存量、商品物流信息中的至少之一是否满足订单创建的需求条件;以及,判断订单创建请求携带的商品维度字段是否大于预设数目。
90.本技术的上述实施例提供的外部业务数据的交互装置与本技术实施例提供的外部业务数据的交互方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
91.关于外部业务数据的交互装置的具体限定可以参见上文中对于外部业务数据的交互方法的限定,在此不再赘述。上述外部业务数据的交互装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
92.在一个实施例中,提供了一种计算机设备,该计算机设备可以是手机、电脑或服务
器等,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性和/或易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的客户端通过网络连接通信。该计算机程序被处理器执行时以实现一种外部业务数据的交互方法。
93.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
94.监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成第一外部数据平台对应的接口脚本;
95.基于第一外部数据平台对应的接口脚本,通过预设安全策略对第一外部数据平台进行安全监控,预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一;
96.若第一外部数据平台满足安全条件,接收到第一外部数据平台的业务请求,则确定业务请求对应的业务信息是否满足业务请求对应的预设业务需求条件;
97.若满足预设业务需求条件,则根据业务信息,对业务请求进行处理,并向第一外部数据平台返回处理结果。
98.处理器执行计算机程序时还实现以下步骤:获取第一外部数据平台的标识信息;根据标识信息,将预设的第二外部数据平台对应的接口脚本中的配置信息映射为第一外部数据平台的配置信息,得到第一外部数据平台对应的接口脚本。
99.处理器执行计算机程序时还实现以下步骤:基于第一外部数据平台对应的接口脚本获取第一外部数据平台的平台相关信息;平台相关信息包括第一外部数据平台的数据流量,通过预设限流组件确定数据流量是否大于限流策略规定的预设流量阈值;和/或,平台相关信息包括第一外部数据平台的渠道名,确定渠道名是否属于白名单策略中的预设渠道白名单;和/或,平台相关信息包括第一外部数据平台的链路信息,通过业务链路监控策略监控链路信息所反映的数据传输是否出现预设异常情况。
100.处理器执行计算机程序时还实现以下步骤:为业务请求分配状态标识,存储状态标识与业务请求的映射关系;若业务请求对应的业务信息不满足预设业务需求条件,则每间隔预设时长重新确定业务信息是否满足预设业务需求条件;若重新确定预设次数均不满足所述预设业务需求条件,则将状态标识设置为预设失败标识。
101.处理器执行计算机程序时还实现以下步骤:检测到用户触发的预设失败标识对应的业务请求的重新确定任务,创建重新确定任务对应的线程;将线程添加到预设线程池中;基于分布式锁,控制预设线程池中来自于不同外部数据平台的业务请求对应的线程并行执行。
102.处理器执行计算机程序时还实现以下步骤:监听需要回传给第一外部数据平台对应的待回传数据,将待回传数据发送给第一外部数据平台;若待回传数据传输失败,则每间隔预设时长重新发送待回传数据给第一外部数据平台;若重新发送预设次数均传输失败,则将待回传数据与业务请求的映射关系记录在预设回传失败表中。
103.处理器执行计算机程序时还实现以下步骤:根据订单创建请求对应的商品信息,
确定商品信息包括的商品类型、商品库存量、商品物流信息中的至少之一是否满足订单创建的需求条件;以及,判断订单创建请求携带的商品维度字段是否大于预设数目。
104.本技术的上述实施例提供的计算机设备与本技术实施例提供的外部业务数据的交互方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
105.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
106.监测到新接入的第一外部数据平台,调用预设的第二外部数据平台对应的接口脚本,生成第一外部数据平台对应的接口脚本;
107.基于第一外部数据平台对应的接口脚本,通过预设安全策略对第一外部数据平台进行安全监控,预设安全策略包括限流策略、白名单策略及业务链路监控策略中的至少之一;
108.若第一外部数据平台满足安全条件,接收到第一外部数据平台的业务请求,则确定业务请求对应的业务信息是否满足业务请求对应的预设业务需求条件;
109.若满足预设业务需求条件,则根据业务信息,对业务请求进行处理,并向第一外部数据平台返回处理结果。
110.本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的外部业务数据的交互方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
111.需要说明的是,上述关于计算机可读存储介质或计算机设备所能实现的功能或步骤,可对应参阅前述方法实施例中的相关描述,为避免重复,这里不再一一描述。
112.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
113.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
114.以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应
包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1