CN108933713B - 基于影子链路实现沙箱调试的方法、装置及业务服务器 - Google Patents

基于影子链路实现沙箱调试的方法、装置及业务服务器 Download PDF

Info

Publication number
CN108933713B
CN108933713B CN201810804365.8A CN201810804365A CN108933713B CN 108933713 B CN108933713 B CN 108933713B CN 201810804365 A CN201810804365 A CN 201810804365A CN 108933713 B CN108933713 B CN 108933713B
Authority
CN
China
Prior art keywords
service interface
user
client
called
sandbox
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810804365.8A
Other languages
English (en)
Other versions
CN108933713A (zh
Inventor
皮维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201810804365.8A priority Critical patent/CN108933713B/zh
Publication of CN108933713A publication Critical patent/CN108933713A/zh
Application granted granted Critical
Publication of CN108933713B publication Critical patent/CN108933713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)

Abstract

公开了一种基于影子链路实现沙箱调试的方法、装置及业务服务器,所述方法包括:接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;对所述业务接口调用请求中携带的所述调用者标识进行识别;若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;向所述客户端返回针对所述待调用业务接口的调用结果。

Description

基于影子链路实现沙箱调试的方法、装置及业务服务器
技术领域
本说明书实施例涉及数据处理技术领域,尤其涉及一种基于影子链路实现沙箱调试的方法、装置及业务服务器。
背景技术
随着互联网技术的发展,越来越多的网络服务平台对外提供开放API(Application Programming Interface,应用程序编程调用接口),即将自身的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者基于该些数据接口开发出新的应用,并使得该新的应用能够运行于网络服务平台之上,其中,提供开放API的平台本身被称为开放平台。
现有技术中,为了便于应用的开发和调试,开放平台提供一个仿真的调试环境,即沙箱环境,该沙箱环境模拟开放平台的真实线上环境,其具备直观仿真的实测效果,同时,沙箱环境作为一个独立的虚拟环境,其可以将处于开发阶段尚未得到完全检验的第三方应用代码与真实的线上环境相隔离,避免对真实的线上环境造成影响和破坏,可以说,提供沙箱环境是构建开发平台必不可少的一环。
对于传统的沙箱环境而言,由于其属于一种线下环境,从而很容易受外界环境因素,例如设备等影响而发生变动,也即,传统的沙箱环境具有不稳定性,而沙箱环境的不稳定性将进一步影响基于该沙箱环境进行业务接口调试的效果,同时,也给应用开发带来了额外负担。
发明内容
针对上述技术问题,本说明书实施例提供一种基于影子链路实现沙箱调试的方法、装置及业务服务器,技术方案如下:
根据本说明书实施例的第一方面,提供一种基于影子链路实现沙箱调试的方法,所述方法包括:
接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;
对所述业务接口调用请求中携带的所述调用者标识进行识别;
若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;
向所述客户端返回针对所述待调用业务接口的调用结果。
根据本说明书实施例的第二方面,提供一种基于影子链路实现沙箱调试的装置,所述装置包括:
第一接收模块,用于接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;
标识识别模块,用于对所述业务接口调用请求中携带的所述调用者标识进行识别;
接口调用模块,用于若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相关隔离;
第一返回模块,用于向所述客户端返回针对所述待调用业务接口的调用结果。
根据本说明书实施例的第三方面,提供一种业务服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现本说明书实施例提供的任一基于影子链路实现沙箱调试的方法。
本说明书实施例所提供的技术方案,通过接收客户端发送的业务接口调用请求,其中,该业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,该调用者标识用于标识客户端上登录用户的用户身份,该用户身份为沙箱测试用户,或者是真实线上用户;对业务接口调用请求中携带的调用者标识进行识别;若识别结果表示客户端上登录用户的用户身份为沙箱测试用户,且待调用业务接口已签约,则利用预先配置的影子链路调用待调用业务接口,其中,影子链路模拟于真实线上链路,且与真实线上链路相互隔离;向客户端返回针对所述待调用业务接口的调用结果,实现了利用线上环境和网络来提供沙箱测试服务,从而提高了沙箱测试服务的稳定性,也就有效保证了基于沙箱测试服务进行业务接口调试的效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为实现本说明书实施例提出的基于影子链路实现沙箱调试的方法的一种应用场景示意图;
图2为本说明书一示例性实施例提供的一种基于影子链路实现沙箱调试的方法的实施例流程图;
图3为本说明书一示例性实施例提供的另一种基于影子链路实现沙箱调试的方法的实施例流程图;
图4为本说明书一示例性实施例提供的一种基于影子链路实现沙箱调试的装置的实施例框图;
图5示出了本说明书实施例所提供的一种更为具体的业务服务器硬件结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
为了解决上述问题,本说明书实施例提供一种基于影子链路实现沙箱调试的方法,如下,对该方法进行说明。
首先,请参见图1,为实现本说明书实施例提出的基于影子链路实现沙箱调试的方法的一种应用场景示意图。
如图1所示,包括客户端110、线上服务器集群120,本领域技术人员可以理解的是,该线上服务器集群120可包括多台服务器(图1中并未示出),在图1中,根据该线上服务器集群120所实现的功能,从功能角度示出了该线上服务器集群所包括的主要***架构,包括:***平台、网关、业务***、数据库。其中,客户端110可通过***平台与线上服务器集群120进行直接交互,例如可以通过***平台向线上服务器集群申请用户账号、申请网关秘钥、登录用户账号、请求业务处理等操作;网关则可对业务流量进行控制或分流;业务***则可对用户所请求的具体业务进行业务处理,例如进行业务接口调用;数据库则可用于存储业务处理所产生的业务数据。
如下,在上述图1所示应用场景的基础上,示出下述实施例对基于影子链路实现沙箱调试的方法进行说明。
实施例一:
请参见图2,为本说明书一示例性实施例提供的一种基于影子链路实现沙箱调试的方法的实施例流程图,该方法包括以下步骤:
步骤202:接收客户端发送的业务接口调用请求,其中,业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,该调用者标识用于标识客户端上登录用户的用户身份,该用户身份为下述其中一项:沙箱测试用户、真实线上用户。
在本说明书实施例中,图1所示例的线上服务器集群120可同时处理正常的业务接口调用请求与用于沙箱测试的业务接口调用请求,为了区分该两类业务接口调用请求,业务接口调用请求除携带有待调用业务接口的接口信息(例如接口名称)以外,还可以携带有调用者标识,该调用者标识用于标识客户端上登录用户的用户身份,其中,该用户身份可以为沙箱测试用户,或者真实线上用户。
在本说明书实施例中,上述待调用业务接口已签约,即开通有调试权限,从而使得沙箱测试用户可以对该待调用业务接口进行调试。
在一实施例中,上述调用者标识可以包括客户端上登录用户的用户账号,本领域技术人员可以理解的是,该用户账号为沙箱测试用户预先申请的,具体的申请过程,请参见下述实施例二中的相关描述,在此先不作详述。
基于上述描述可知,通过调用者标识可区分出沙箱测试用户与真实线上用户,那么,沙箱测试用户与真实线上用户各自的用户账号可以有所区别。在一实施例中,沙箱测试用户的用户账号中可以包括指定格式的字符串,例如沙箱测试用户的用户账号中包括“@test”这一指定格式的字符串,又例如沙箱测试用户的用户账号中最末两位为字母。
步骤204:对业务接口调用请求中携带的调用者标识进行识别。
基于上述步骤202中的相关描述,在本步骤中,则可以识别接收到的业务接口调用请求中携带的用户账号中是否包括指定格式的字符串,若包括指定格式的字符串,则可以得出用于表示客户端上登录用户的用户身份为沙箱测试用户的识别结果;反之,若不包括指定格式的字符串,则得出用于表示客户端上登录用户的用户身份为真实线上用户的识别结果。
基于图1所示例的应用场景,可以由图1所示例的网关执行该步骤。
步骤206:若识别结果表示客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用该待调用业务接口,其中,影子链路为模拟于真实线上链路,且与该真实线上链路相互隔离的链路。
在本说明书实施例中,若步骤204的识别结果表示客户端上登录用户的用户身份为沙箱测试用户,且待调用业务接口已签约时,则可以利用预先配置的影子链路调用该待调用业务接口。
本说明书实施例中的影子链路模拟真实线上链路,具有真实线上链路的主要功能和主要逻辑,其虽然也是基于线上服务集群实现的,但其与真实线上链路是相互隔离的,从而可以避免污染真实的线上数据。
基于图1所示例的应用场景,可以由图1所示例的业务***执行该步骤。
需要说明的是,在本说明书实施例中,为了实现测试数据与真实线上数据的完全隔离,可以将利用影子链路调用待调用业务接口所产生的调用数据存储于预先配置的影子数据表中,该影子数据表可与用于存储真实线上调用数据的线上数据表相互隔离。
在一实施例中,可以通过将两类数据表存放于不同的数据库,以实现两者的相关隔离。
在另一实施例中,可以通过将两类数据表存放与同一数据库,但以不同表的形式实现两者的相关隔离。
步骤208:向客户端返回针对待调用业务接口的调用结果。
此外,在本说明书实施例中,为了避免线上服务器集群120过多处理来自沙箱测试用户的业务接口调用请求,而影响真实的线上业务,提出在线上服务器集群120中布设监控***和运维***(图1中未示出),以通过该监控***和运维***对来自沙箱测试用户的业务接口调用请求进行安全控制或切流处理工作,具体的,可以针对接收到的,沙箱测试用户所登录的客户端发送的业务接口调用请求进行统计;若统计结果满足预先设置的控制条件,则当新接收到沙箱测试用户所登录的客户端发送的业务接口调用请求时,按照预先设置的控制策略处理该新接收到的业务接口调用请求。
在一实施例中,上述预先设置的控制条件可以为:预设时间段内,接收到的来自沙箱测试用户的业务接口调用请求的数量达到一定数量级别,例如达到预设阈值。
在一实施例中,上述预先设置的控制策略可以为:在指定时间段内,拒绝处理新接收到的来自沙箱测试用户的业务接口调用请求;或者是,延时处理新接收到的来自沙箱测试用户的业务接口调用请求。
本领域技术人员可以理解的是,上述关于预先设置的控制条件、预先设置的控制策略的相关描述仅仅作为举例,在实际应用中,预先设置的控制条件、预先设置的控制策略还可以为其他形式,本说明书实施例对此不作限制。
本说明书实施例所提供的技术方案,通过接收客户端发送的业务接口调用请求,其中,该业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,该调用者标识用于标识客户端上登录用户的用户身份,该用户身份为沙箱测试用户,或者是真实线上用户;对业务接口调用请求中携带的调用者标识进行识别;若识别结果表示客户端上登录用户的用户身份为沙箱测试用户,且待调用业务接口已签约,则利用预先配置的影子链路调用待调用业务接口,其中,影子链路模拟于真实线上链路,且与真实线上链路相互隔离;向客户端返回针对所述待调用业务接口的调用结果,实现了利用线上环境和网络来提供沙箱测试服务,从而提高了沙箱测试服务的稳定性,也就有效保证了基于沙箱测试服务进行业务接口调试的效果。
至此,完成实施例一的相关描述。
实施例二:
首先说明,该实施例二在上述实施例一的基础上,对沙箱测试用户进行用户注册至完成业务接口调试的完整流程进行说明。
请参见图3,为本说明书一示例性实施例提供的另一种基于影子链路实现沙箱调试的方法的实施例流程图,该方法包括以下步骤:
步骤302:接收客户端发送的沙箱测试账号申请请求,该沙箱测试账号申请请求用于为沙箱测试用户申请用户账号,并根据该沙箱测试账号申请请求向客户端返回用户账号,其中,所返回的用户账号包括指定格式的字符串。
本说明书实施例中,沙箱测试用户可通过图1所示例的客户端110与线上服务器集群120中的***平台,向线上服务器集群120发送沙箱测试账号申请请求,线上服务器集群120中的业务***,则对该沙箱测试账号申请请求进行处理,具体的,根据该沙箱测试账号申请请求生成用户账号,并通过***平台向客户端110返回该用户账号。
需要说明的是,该返回的用户账号中包括指定格式的字符串,以标识该返回的用户账号属于沙箱测试用户。
至于业务***根据沙箱测试账号申请请求生成用户账号的具体过程,本领域技术人员可以参见现有技术中的相关描述,本说明书实施例对此不再详述。
步骤304:接收客户端发送的网关秘钥申请请求,该网关秘钥申请请求用于为沙箱测试用户申请网关秘钥,并根据该网关秘钥申请请求向客户端返回网关秘钥。
在本说明书实施例中,为了保障后续业务接口调用的安全性,沙箱测试用户还可以通过图1所示例的客户端110与线上服务器集群120中的***平台,向线上服务器集群120发送网关秘钥申请请求,该网关秘钥申请请求用于为该沙箱测试用户申请网关秘钥,线上服务器集群120中的网关,则对该网关秘钥申请请求进行处理,具体的,根据该网关秘钥申请请求生成网关秘钥,并通过***平台向客户端110返回该网关秘钥。
至于网关根据该网关秘钥申请请求生成网关秘钥的具体过程,本领域技术人员可以参见现有技术中的相关描述,本说明书实施例对此不再详述。
步骤306:接收客户端发送的业务接口测试请求,其中,业务接口测试请求至少携带有待调用业务接口的接口信息。
在本说明书实施例中,沙箱测试用户可利用上述步骤302与步骤304中申请到的用户账号登录线上服务器集群120的***平台,通过该***平台向线上服务器集群120发送业务接口测试请求,该业务接口测试请求至少携带有待调用业务接口的接口信息,例如接口名称。
步骤308:确定待调用业务接口是否已签约,若未签约,则执行步骤310;若已签约,则执行步骤312;
在本说明书实施例中,在对线上服务器集群120进行预配置的过程中,可预先对某些业务接口进行签约,也即开通该业务接口的调试权限。
后续,在接收到业务接口测试请求后,可首先判断该业务接口测试请求所指示的待调用业务接口是否已签约,若是,则可以直接执行步骤312;若未签约,则执行步骤310。
步骤310:对待调用业务接口进行签约,以开通待调用业务接口的调试权限。
步骤312:向客户端返回用于表示允许对待调用业务接口进行调试的申请结果。
步骤314:接收客户端发送的业务接口调用请求,对业务接口调用请求中携带的调用者标识进行识别,若识别结果表示客户端上登录用户的用户身份为沙箱测试用户,则利用预先配置的影子链路调用待调用业务接口,向客户端返回针对待调用业务接口的调用结果。
在本说明书实施例中,客户端110接收到线上服务器集群120返回的用于表示允许对待调用业务接口进行调试的申请结果后,可将该申请结果显示给沙箱测试用户,以便沙箱测试用户继续通过客户端110与线上服务器集群120的***平台向线上服务器集群120发送业务接口调用请求,线上服务器集群120基于该业务接口调用请求所做的处理则可参见上述实施例一中的描述,在此不再重复描述。
需要说明的是,该业务接口调用请求中还可携带有上述步骤204中申请得到的网关秘钥,那么,线上服务器集群120中的网关则首先对该业务接口调用请求中携带的网关秘钥进行校验,在校验通过后,再转业务***的影子链路调用待调用业务接口。
上述实施例所提供的技术方案,实现了利用线上环境和网络来提供沙箱测试服务,从而提高了沙箱测试服务的稳定性,也就有效保证了基于沙箱测试服务进行业务接口调试的效果。
至此,完成实施例二的相关描述。
相应于上述方法实施例,本说明书实施例还提供一种基于影子链路实现沙箱调试的装置,请参见图4,为本说明书一示例性实施例提供的一种基于影子链路实现沙箱调试的装置的实施例框图,该装置可以包括:第一接收模块41、标识识别模块42、接口调用模块43,以及第一返回模块44。
其中,第一接收模块41,可以用于接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;
标识识别模块42,可以用于对所述业务接口调用请求中携带的所述调用者标识进行识别;
接口调用模块43,可以用于若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相关隔离;
第一返回模块44,可以用于向所述客户端返回针对所述待调用业务接口的调用结果。
在一实施例中,所述装置还可以包括(图4中未示出):
第二接收模块,用于接收客户端发送的业务接口测试请求,其中,所述业务接口测试请求至少携带有待调用业务接口的接口信息;
确定模块,用于确定所述待调用业务接口是否已签约;
签约模块,用于若所述待调用业务接口未签约,则对所述待调用业务接口进行签约,以开通所述待调用业务接口的调试权限。
在一实施例中,所述装置还可以包括(图4中未示出):
存储模块,用于将利用所述影子链路调用所述待调用业务接口所产生的调用数据存储于预先配置的影子数据表;
其中,所述影子数据表与用于存储真实线上调用数据的线上数据表相互隔离。
在一实施例中,所述装置还可以包括(图4中未示出):
统计模块,用于针对接收到的,沙箱测试用户所登录的客户端发送的业务接口调用请求进行统计;
处理模块,用于若统计结果满足预先设置的控制条件,则当新接收到的沙箱测试用户所登录的客户端发送的业务接口调用请求时,按照预先设置的控制策略处理所述新接收到的业务接口调用请求。
在一实施例中,所述调用者标识包括:用户账号;
所述标识识别模块42具体用于:
识别所述业务接口调用请求中携带的用户账号中是否包括指定格式的字符串;若所述用户账号中包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为沙箱测试用户的识别结果;若所述用户账号中不包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为真实线上用户的识别结果。
在一实施例中,所述业务接口调用请求还携带有网关秘钥;
所述接口调用模块43具体用于:
对所述业务接口调用请求中携带的网关秘钥进行校验;若校验通过,则利用预先配置的影子链路调用所述待调用业务接口。
在一实施例中,所述装置还可以包括(图4中未示出):
第三接收模块,用于接收客户端发送的沙箱测试账号申请请求,所述沙箱测试账号申请请求用于为沙箱测试用户申请用户账号;
第二返回模块,用于根据所述沙箱测试账号申请请求向所述客户端返回用户账号,其中,所返回的用户账号包括指定格式的字符串;
第四接收模块,用于接收客户端发送的网关秘钥申请请求,所述网关秘钥申请请求用于为所述沙箱测试用户申请网关秘钥;
第三返回模块,用于根据所述网关秘钥申请请求向所述客户端返回网关秘钥。
可以理解的是,第一接收模块41、标识识别模块42、接口调用模块43,以及第一返回模块44作为四种功能独立的模块,既可以如图4所示同时配置在装置中,也可以分别单独配置在装置中,因此图4所示的结构不应理解为对本说明书实施例方案的限定。
此外,上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
本说明书实施例还提供一种业务服务器,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的一种基于影子链路实现沙箱调试的方法,该方法至少包括:接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;对所述业务接口调用请求中携带的所述调用者标识进行识别;若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;向所述客户端返回针对所述待调用业务接口的调用结果。
图5示出了本说明书实施例所提供的一种更为具体的业务服务器硬件结构示意图,该业务服务器可以包括:处理器510、存储器520、输入/输出接口530、通信接口540和总线550。其中处理器510、存储器520、输入/输出接口530和通信接口540通过总线550实现彼此之间在设备内部的通信连接。
处理器510可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器520可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器520可以存储操作***和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器520中,并由处理器510来调用执行。
输入/输出接口530用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图5中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口540用于连接通信模块(图5中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线550包括一通路,在设备的各个组件(例如处理器510、存储器520、输入/输出接口530和通信接口540)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器510、存储器520、输入/输出接口530、通信接口540以及总线550,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的基于影子链路实现沙箱调试的方法,该方法至少包括:接收客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识,所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;对所述业务接口调用请求中携带的所述调用者标识进行识别;若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;向所述客户端返回针对所述待调用业务接口的调用结果。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。

Claims (13)

1.一种基于影子链路实现沙箱调试的方法,所述方法包括:
接收客户端发送的沙箱测试账号申请请求,所述沙箱测试账号申请请求用于为沙箱测试用户申请用户账号;
根据所述沙箱测试账号申请请求,向所述客户端返回所述沙箱测试用户的用户账号;
接收所述客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识;所述调用者标识包括用户账号;所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;
对所述业务接口调用请求中携带的所述调用者标识进行识别;
若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;
向所述客户端返回针对所述待调用业务接口的调用结果;
针对接收到的,沙箱测试用户所登录的客户端发送的业务接口调用请求进行统计;
若统计结果满足预先设置的控制条件,则当新接收到沙箱测试用户所登录的客户端发送的业务接口调用请求时,按照预先设置的控制策略处理所述新接收到的业务接口调用请求;
其中,所述预先设置的控制策略包括:在指定时间段内拒绝处理新接收到的来自沙箱测试用户的业务接口调用请求;或者,延时处理新接收到的来自沙箱测试用户的业务接口调用请求。
2.根据权利要求1所述的方法,在所述接收客户端发送的业务接口调用请求之前,所述方法还包括:
接收客户端发送的业务接口测试请求,其中,所述业务接口测试请求至少携带有待调用业务接口的接口信息;
确定所述待调用业务接口是否已签约;
若所述待调用业务接口未签约,则对所述待调用业务接口进行签约,以开通所述待调用业务接口的调试权限。
3.根据权利要求1所述的方法,在所述利用预先配置的影子链路调用所述待调用业务接口之后,所述方法还包括:
将利用所述影子链路调用所述待调用业务接口所产生的调用数据存储于预先配置的影子数据表;
其中,所述影子数据表与用于存储真实线上调用数据的线上数据表相互隔离。
4.根据权利要求1所述的方法,所述沙箱测试用户的用户账号包括指定格式的字符串;所述对所述业务接口调用请求中携带的所述调用者标识进行识别,包括:
识别所述业务接口调用请求中携带的用户账号中是否包括指定格式的字符串;
若所述用户账号中包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为沙箱测试用户的识别结果;若所述用户账号中不包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为真实线上用户的识别结果。
5.根据权利要求4所述的方法,所述业务接口调用请求还携带有网关秘钥;
所述利用预先配置的影子链路调用所述待调用业务接口,包括:
对所述业务接口调用请求中携带的网关秘钥进行校验;
若校验通过,则利用预先配置的影子链路调用所述待调用业务接口。
6.根据权利要求5所述的方法,所述方法还包括:
接收客户端发送的网关秘钥申请请求,所述网关秘钥申请请求用于为所述沙箱测试用户申请网关秘钥;
根据所述网关秘钥申请请求向所述客户端返回网关秘钥。
7.一种基于影子链路实现沙箱调试的装置,所述装置包括:
第三接收模块,用于接收客户端发送的沙箱测试账号申请请求,所述沙箱测试账号申请请求用于为沙箱测试用户申请用户账号;
第二返回模块,用于根据所述沙箱测试账号申请请求,向所述客户端返回所述沙箱测试用户的用户账号;
第一接收模块,用于接收所述客户端发送的业务接口调用请求,其中,所述业务接口调用请求至少携带有待调用业务接口的接口信息、调用者标识;所述调用者标识包括用户账号;所述调用者标识用于标识所述客户端上登录用户的用户身份,所述用户身份为下述其中一项:沙箱测试用户、真实线上用户;
标识识别模块,用于对所述业务接口调用请求中携带的所述调用者标识进行识别;
接口调用模块,用于若识别结果表示所述客户端上登录用户的用户身份为沙箱测试用户,且所述待调用业务接口已签约,则利用预先配置的影子链路调用所述待调用业务接口,其中,所述影子链路模拟于真实线上链路,且与所述真实线上链路相互隔离;
第一返回模块,用于向所述客户端返回针对所述待调用业务接口的调用结果;
统计模块,用于针对接收到的,沙箱测试用户所登录的客户端发送的业务接口调用请求进行统计;
处理模块,用于若统计结果满足预先设置的控制条件,则当新接收到沙箱测试用户所登录的客户端发送的业务接口调用请求时,按照预先设置的控制策略处理所述新接收到的业务接口调用请求;
其中,所述预先设置的控制策略包括:在指定时间段内拒绝处理新接收到的来自沙箱测试用户的业务接口调用请求;或者,延时处理新接收到的来自沙箱测试用户的业务接口调用请求。
8.根据权利要求7所述的装置,所述装置还包括:
第二接收模块,用于接收客户端发送的业务接口测试请求,其中,所述业务接口测试请求至少携带有待调用业务接口的接口信息;
确定模块,用于确定所述待调用业务接口是否已签约;
签约模块,用于若所述待调用业务接口未签约,则对所述待调用业务接口进行签约,以开通所述待调用业务接口的调试权限。
9.根据权利要求7所述的装置,所述装置还包括:
存储模块,用于将利用所述影子链路调用所述待调用业务接口所产生的调用数据存储于预先配置的影子数据表;
其中,所述影子数据表与用于存储真实线上调用数据的线上数据表相互隔离。
10.根据权利要求7所述的装置,所述沙箱测试用户的用户账号包括指定格式的字符串;
所述标识识别模块具体用于:
识别所述业务接口调用请求中携带的用户账号中是否包括指定格式的字符串;若所述用户账号中包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为沙箱测试用户的识别结果;若所述用户账号中不包括指定格式的字符串,则得出用于表示所述客户端上登录用户的用户身份为真实线上用户的识别结果。
11.根据权利要求10所述的装置,所述业务接口调用请求还携带有网关秘钥;
所述接口调用模块具体用于:
对所述业务接口调用请求中携带的网关秘钥进行校验;若校验通过,则利用预先配置的影子链路调用所述待调用业务接口。
12.根据权利要求11所述的装置,所述装置还包括:
第四接收模块,用于接收客户端发送的网关秘钥申请请求,所述网关秘钥申请请求用于为所述沙箱测试用户申请网关秘钥;
第三返回模块,用于根据所述网关秘钥申请请求向所述客户端返回网关秘钥。
13.一种业务服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1-6中任一项所述的方法。
CN201810804365.8A 2018-07-20 2018-07-20 基于影子链路实现沙箱调试的方法、装置及业务服务器 Active CN108933713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810804365.8A CN108933713B (zh) 2018-07-20 2018-07-20 基于影子链路实现沙箱调试的方法、装置及业务服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810804365.8A CN108933713B (zh) 2018-07-20 2018-07-20 基于影子链路实现沙箱调试的方法、装置及业务服务器

Publications (2)

Publication Number Publication Date
CN108933713A CN108933713A (zh) 2018-12-04
CN108933713B true CN108933713B (zh) 2022-08-26

Family

ID=64448220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810804365.8A Active CN108933713B (zh) 2018-07-20 2018-07-20 基于影子链路实现沙箱调试的方法、装置及业务服务器

Country Status (1)

Country Link
CN (1) CN108933713B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683997B (zh) * 2018-12-21 2022-02-11 前锦网络信息技术(上海)有限公司 通过沙箱访问应用程序接口的方法、沙箱及沙箱设备
CN111966426A (zh) * 2019-05-20 2020-11-20 顺丰科技有限公司 一种api对接方法、***、设备及存储介质
CN110597723A (zh) * 2019-09-18 2019-12-20 达疆网络科技(上海)有限公司 一种轻量级的商家***对接快速测试联调***
CN112559437A (zh) * 2019-09-25 2021-03-26 阿里巴巴集团控股有限公司 一种调试单元及处理器
CN111552610A (zh) * 2020-04-17 2020-08-18 上海中通吉网络技术有限公司 全链路监控方法和装置
CN114143236A (zh) * 2020-08-13 2022-03-04 网联清算有限公司 一种业务***测试方法、装置、电子设备和可读存储介质
CN113411269B (zh) * 2021-07-07 2022-05-17 杭州网易云音乐科技有限公司 限流控制方法、限流控制装置、存储介质及电子设备
CN113610651A (zh) * 2021-08-17 2021-11-05 上海镁信健康科技有限公司 一种pbm生态***的开放平台
CN113704117B (zh) * 2021-08-31 2023-06-02 北京三快在线科技有限公司 一种算法测试***、方法及装置
CN115225666A (zh) * 2022-07-07 2022-10-21 支付宝(杭州)信息技术有限公司 生产演练方法、装置、***、应急规则平台和注入平台

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878045A (zh) * 2016-10-11 2017-06-20 阿里巴巴集团控股有限公司 业务调用方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9455887B1 (en) * 2013-08-14 2016-09-27 Amazon Technologies, Inc. Distributed performance evaluation framework
CN106528362B (zh) * 2015-09-10 2019-03-19 阿里巴巴集团控股有限公司 一种流量隔离方法及装置
CN107483534B (zh) * 2017-06-28 2020-07-28 阿里巴巴集团控股有限公司 一种业务处理的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878045A (zh) * 2016-10-11 2017-06-20 阿里巴巴集团控股有限公司 业务调用方法及装置

Also Published As

Publication number Publication date
CN108933713A (zh) 2018-12-04

Similar Documents

Publication Publication Date Title
CN108933713B (zh) 基于影子链路实现沙箱调试的方法、装置及业务服务器
US10474563B1 (en) System testing from production transactions
CN108345535A (zh) mock测试方法、装置及设备
CN111782338A (zh) 一种基于区块链智能合约的数据处理方法及***
CN110022260B (zh) 一种跨环境回执消息处理方法及***
CN113268336B (zh) 一种服务的获取方法、装置、设备以及可读介质
CN109683997B (zh) 通过沙箱访问应用程序接口的方法、沙箱及沙箱设备
CN114095567B (zh) 数据访问请求的处理方法、装置、计算机设备及介质
CN113535721A (zh) 一种数据写入方法及装置
CN117278434A (zh) 流量回放方法、装置、电子设备
CN112035344A (zh) 多场景测试方法、装置、设备和计算机可读存储介质
CN109002733A (zh) 一种对设备进行可信性评价的方法及装置
CN112732499A (zh) 一种基于微服务架构的测试方法、装置及计算机***
CN111090666A (zh) 一种数据处理方法、装置、***及计算机可读存储介质
CN107291612B (zh) 一种测试的方法及装置
CN113220640B (zh) 一种基于区块链的仲裁方法及装置
US11557005B2 (en) Addressing propagation of inaccurate information in a social networking environment
CN107395663B (zh) 数据获取方法及装置
CN107526580A (zh) 终端应用识别方法及装置
CN113158196A (zh) 登录验证方法、装置、设备和介质
CN107357562B (zh) 一种信息填充方法、装置及客户端
CN111047146B (zh) 一种企业用户的风险识别方法、装置及设备
CN110278241B (zh) 一种注册请求处理方法及装置
CN111506895A (zh) 一种应用登录图的构建方法及装置
CN109726550A (zh) 异常操作行为检测方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200929

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

Effective date of registration: 20200929

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant