CN103684895B - 一种产生克隆环境的方法和装置 - Google Patents
一种产生克隆环境的方法和装置 Download PDFInfo
- Publication number
- CN103684895B CN103684895B CN201210332741.0A CN201210332741A CN103684895B CN 103684895 B CN103684895 B CN 103684895B CN 201210332741 A CN201210332741 A CN 201210332741A CN 103684895 B CN103684895 B CN 103684895B
- Authority
- CN
- China
- Prior art keywords
- module
- response data
- environment
- data
- index
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种产生克隆环境的方法和装置,其中方法包括:拦截基准流量环境中上游源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块;并且,拦截基准流量环境中下游响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至克隆环境,并在克隆环境中依据基准流量环境中被测模块发送给下游模块的请求为响应数据建立索引;在克隆环境中依据被测模块向其下游发送的请求,利用索引向被测模块返回对应的响应数据。本发明使得在对业务***的后台模块进行测试时能够快速实时克隆出多个流量环境,避免了大量数据的dump,减少了测试人员的排队时间。
Description
【技术领域】
本发明涉及***测试技术,特别涉及一种产生克隆环境的方法和装置。
【背景技术】
大型互联网公司经常需要对自己内部***改动或升级后的模块进行测试,通常会在线下搭建一个基准流量环境,基准流量环境配备了被测模块的上下游模块,将测试数据输入到基准流量环境中后便能形成一个与线上运行相同的真实流量环境,以此完成对被测模块的测试。在实际工作中,这样的基准流量环境往往是稀缺资源,当有多个被测模块需要使用该基准流量环境时,则需要排队等待该环境被释放,或者dump(转存)基准流量环境中被测模块的上下游数据,来建立一个同样的流量环境。
这样的方案存在明显的缺点:dump数据需要额外的时间,影响效率;需dump的数据量大,需要占用大量磁盘空间、***性能和I/O资源;dump数据时会影响基准流量环境中的数据响应时间。
【发明内容】
有鉴于此,本发明提供了一种产生克隆环境的方法和装置,以能够快速克隆出多个跟基准流量环境一致的流量环境,避免大量数据的dump,同时减少测试人员的排队时间。
具体技术方案如下:
一种产生克隆环境的方法,所述克隆环境用于对被测模块进行测试,该方法包括:
拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块;并且,拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至克隆环境,并在克隆环境中依据所述基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引;
在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
根据本发明一优选实施例,将所述基准流量环境中下游模块返回至被测模块的响应数据转发至克隆环境之前,还包括:根据基准流量环境中被测模块发送给下游模块的请求生成key,之后将该key与下游响应数据形成对应关系转发至克隆环境。
根据本发明一优选实施例,当基准流量环境中的下游模块数量超过一个时,将各下游模块的所述对应关系分别对应存储至以各下游模块的链路编号为标识的特定文件;
在利用所述索引向被测模块返回对应的响应数据时,到对应下游模块的链路编号为标识的特定文件中查询所述响应数据。
根据本发明一优选实施例,该方法还包括:
按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,使所述索引中的数据量不超过预先设置的数量。
根据本发明一优选实施例,所述按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,具体包括:
当所述索引中任一数据的id小于当前所述索引数据中的最大id减去所述预先设置的数量所得的值时,删除该数据,其中,所述数据的id为:将数据保存至所述索引中时为该数据分配的id,初始id为1,每加入一个数据,id值加1。
一种产生克隆环境的装置,该装置包括:
上游Transfer单元,用于拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块;
下游Transfer单元,用于拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至Mockserver单元;
Mockserver单元,用于接收所述下游Transfer单元转发的响应数据,并依据基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引;还用于在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
根据本发明一优选实施例,所述下游Transfer单元将基准流量环境中被测模块的下游响应数据转发至所述Mockserver单元之前,还执行:根据基准流量环境中被测模块发送给下游模块的请求生成key,之后将该key与下游响应数据形成对应关系转发至所述Mockserver单元。
根据本发明一优选实施例,当基准流量环境中的下游模块数量超过一个时,所述Mockserver单元将各下游模块的所述对应关系分别对应存储至以各下游模块的链路编号为标识的特定文件;
所述Mockserver单元在利用所述索引向被测模块返回对应的响应数据时,到对应下游模块的链路编号为标识的特定文件中查询所述响应数据。
根据本发明一优选实施例,所述Mockserver单元还用于:按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,使所述索引中的数据量不超过预先设置的数量。
根据本发明一优选实施例,所述Mockserver单元按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,具体执行:
当所述索引中任一数据的id小于当前所述索引数据中的最大id减去所述预先设置的数量所得的值时,删除该数据,其中,所述数据的id为:将数据保存至所述索引中时为该数据分配的id,初始id值为1,每加入一个数据时,则id值加1。
由以上技术方案可以看出,本发明在保证基准流量环境中数据正常传递的同时,将源数据和响应数据转发至克隆环境,并为响应数据建立索引来模拟基准流量环境中下流模块,以此克隆出与基准流量环境相同的流量环境,来完成对被测模块的测试。本发明使得在对多个被测模块有测试需求时,减少了测试人员的排队时间,同时避免了大量数据的dump。
【附图说明】
图1为本发明实施例一提供的产生克隆环境的方法流程图;
图2为本发明实施例一提供的响应数据索引示意图;
图3为本发明实施例二提供的产生克隆环境的装置示意图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
实施例一
图1为本发明实施例一提供的产生克隆环境的方法流程图,如图1所示,该方法包括:
S101、拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块。
在基准流量环境中数据正常传输的同时,将基准流量环境中上游模块发给被测模块的源数据转发至克隆环境中的被测模块,这一过程可以但不限于用下述方法实现:
拦截基准流量环境中上游模块发送至被测模块的源数据,并缓存该源数据,之后可以将该源数据发送至基准流量环境中的被测模块以及转发至克隆环境中的被测模块,在上述发送和转发过程结束后,从缓存中删除该源数据。
克隆环境中的被测模块在接收到上游源数据后,经过一系列处理会形成一个请求发送下游,向下游请求对应的响应数据。为了保证克隆环境中的被测模块向下游发送请求时,对应的响应数据已准备好,本步骤中在将基准流量环境中上游模块发送至被测模块的源数据向克隆环境中的被测模块转发时,可以设置一个延时值,在将该源数据发送至基准流量环境中的被测模块后,经过该延时值后再将该上游源数据转发至克隆环境中的被测模块。例如,设置1秒的延时值,则将源数据发送至基准流量环境中的被测模块后经过1秒再将该源数据转发至克隆环境中的被测模块。
S102、拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至克隆环境,并在克隆环境中依据所述基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引。
为了保证克隆环境中的数据流量与基准流量环境中的一致,需要模拟基准流量环境中被测模块的下游模块,以能够在克隆环境中向被测模块返回响应数据。本发明正是利用依据基准流量环境中被测模块发送给下游模块的请求为下游响应数据建立索引的方式,来模拟基准流量环境中下游模块。
在基准流量环境中数据正常传输的同时,将基准流量环境中被测模块的下游后端返回给被测模块的响应数据实时转发至克隆环境,这一过程可以但不限于用下述方法实现:
拦截基准流量环境中下游模块返回至被测模块的响应数据,并缓存该响应数据,之后可以将该响应数据发送至基准流量环境中的被测模块以及转发至克隆环境,在上述返回和转发过程结束后,从缓存中删除该响应数据。
之后,在克隆环境中依据基准流量环境中被测模块发送给下游模块的请求为该些响应数据建立索引。
下述为本发明提供的一种优选建立索引的方式:
基准流量环境中,首先拦截被测模块向下游模块发送的请求,根据该请求生成一个唯一的key,之后将该请求转发至下游模块,下游模块在处理该请求后返回一个响应数据给被测模块,将这个响应数据与之前得到的key形成对应关系后转发至克隆环境,同时将响应数据返回至被测模块。其中,在基准流量环境中根据被测模块向其下游模块发送的请求生成key可以但不限于用下述方式来实现:选取请求中的能标识该请求的字段,如uuid,之后用md5算法根据所选取的字段计算出key值;或者,采用现有的签名算法计算请求的签名,将所得签名作为key值。
克隆环境中,在接收到响应数据与对应的key后,将响应数据保存在特定文件中,保存时,记录该响应数据在该特定文件中存储位置的offset(偏移量)和该响应数据的length(长度),之后该响应数据对应的offet和length以key为标识。当基准流量环境中的下游模块数量超过一个时,需将不同下游模块的响应数据保存在不同的特定文件中,由于每个响应数据都对应一个key,因此需要再建立一层索引来保存下游模块对应的多个key的对应关系,可以以下游模块在基准流量环境中的链路编号为标识,对应下游模块响应数据的key值建立统一的索引,一个下游模块通常仅对应一个索引。
为了便于理解上述优选方式中索引的建立方式,下面结合图2进行进一步的说明。如图2所示,当基准流量环境中存在n个下游模块时,以下游模块的链路编号为标识,对应下游模块响应数据的key值建立一层索引,该索引指向下游模块对应的key值以及响应数据在特定文件中的offset和length。当查找响应数据时,先根据链路编号查找到对应的下游模块的索引,再根据key查找对应的响应数据的offset和length,之后,根据得到的响应数据的offset和length便能从相应的特定文件中找到对应的响应数据。
需要说明的是,在上述索引的建立方法中,将响应数据保存在特定文件中时,还可以选取现有算法,如模运算,对key进行进一步计算,之后将计算所得结果作为响应数据的offset和length的标识。
S103、在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
克隆环境中,被测模块接收到步骤S101转发的上游源数据后,经过一系列处理,会向下游发送请求包。根据该请求包,利用步骤S103所建立的索引返回对应的响应数据。若步骤S102中采用了所描述的优选方式建立索引,那么在本步骤中,根据被测模块发送的请求以与步骤S102优选方式中相同的方式生成key,之后根据该key查找对应的响应数据,并将找到的响应数据返回至被测模块。当基准流量环境中的下游模块数量超过1个时,则先根据链路编号查找对应的下游模块响应数据的索引,再在查找到的索引中根据key查找对应的响应数据的offset和length,之后从相应的特定文件提取该响应数据并返回至被测模块。
需要说明的是,在上述本发明实施例一提供的方法中,步骤S101和步骤S102可以同时并行执行,即在保证基准流量环境中数据流量正常传送时,将上游模块发送给被测模块的源数据和下游模块返回至被测模块的响应数据同时转发至克隆环境并建立索引。
通过上述本发明实施例一提供的方法,克隆出了与基准流量环境相同的流量环境,同时为响应数据建立的索引,能够模拟基准流量环境中的下游模块,向克隆环境的被测模块返回对应的响应数据。此外,需要说明的是,为响应数据所建立的索引能够为多个被测模块提供返回响应数据的服务,即一个响应数据的索引可以同时应用在多个克隆环境中,可将基准流量环境中上游模块发送给被测模块的源数据同时转发给多个克隆环境中的被测模块,之后该多个被测模块可通过一个响应数据的索引查找并返回得到对应的响应数据。可见,上述本发明实施例一提供的方法能够快速克隆出多个与基准流量环境相同的流量环境。
随着基准环境流量中的下游模块的响应数据不断被转发至克隆环境并被保存到索引中,索引中的数据越来越多,为了不让索引过于膨胀,需要对索引进行整理。所以,上述本发明实施例一提供的方法还可以包括下述步骤:
S104、按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,使所述索引中的数据量不超过预先设置的数量。
本发明是用定期删除索引中保存时间较长的数据的方式来进行整理。
在将数据添加至索引中时,为数据分配一个id,初始id值为1,之后每加入一个数据,id值加1。例如,索引初始建立后所保存的第一个数据id为1,第二个数据id为2,又如,索引在保存了若干数据后数据最大id值为897,则新存入的数据id为898。
根据测试所需数据规模,预先设置索引中要保存的数据量最大值,当某一数据的id小于当前索引中的数据最大id减去所设置的要保存的数据量最大值所得的值时,则删除该数据。例如,设置索引中要保存的数据量最大值为50万,如果数据的id值小于当前索引表中的最大id值减去50万后所得的值,则删除该数据。例如,某一数据的id值为3675,当前索引中数据的最大id值为504017,3675<504017-500000,所以删除该数据,若该数据id值为5329,5329>504017-500000,则保留该数据。由于数据id值反映了数据在索引中的保存的时长,id值越小则该数据被添加至索引中的时间越早,所以上述方法能保证索引中保存的是最近的50万个转发来的下游后端的响应数据。
对索引的整理可以定期进行,如每半小时整理一次。同时,为了避免每次整理时间过长,可在整理时将索引中的数据分批整理,每整理一批数据后间隔一段时间再整理下一批数据。
实施例二
图3为本发明实施例二提供的产生克隆环境的装置图,如图所示,该装置可以包括:上游Transfer单元10,下游Transfer单元20,Mockserver单元30。
上游Transfer单元10,用于拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块。
上游Transfer单元10设置在基准流量环境中被测模块与其上游模块之间。上游Transfer单元10在保证基准流量环境中上游模块发送的源数据正常传送到被测模块的同时,将该些源数据转发至克隆环境中的被测模块,这一过程可以但不限于用下述方法实现:
拦截基准流量环境中上游模块发送至被测模块的源数据,并缓存该源数据,之后可以将该源数据发送至基准流量环境中的被测模块以及转发至克隆环境中的被测模块,在上述发送和转发过程结束后,从缓存中删除该源数据。
为了保证将源数据转发至克隆环境中的被测模块时,对应的下游响应数据也已被转发至Mockserver单元30并被保存至索引中,可以设定一个延时值,上游Transfer单元10将上游源数据发送至基准流量环境中的被测模块后经过该延时再将上游源数据转发至克隆环境中的被测模块。例如设置1秒的延时值,则Transfer单元10将上游源数据发送至基准流量环境中的被测模块后经过1秒再把上游源数据转发至克隆环境中的被测模块。
下游Transfer单元20,用于拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至Mockserver单元。
下游Transfer单元20设置在基准流量环境中被测模块与其下游后端之间。下游Transfer单元20在保证基准流量环境中下游后端返回的响应数据正常传送到被测模块的同时,将该些响应数据转发至Mockserver单元30,这一过程可以但不限于用下述方法实现:
拦截基准流量环境中下游模块返回至被测模块的响应数据,并缓存该响应数据,之后可以将该响应数据发送至基准流量环境中的被测模块以及转发至克隆环境,在上述返回和转发过程结束后,从缓存中删除该响应数据。
Mockserver单元30,用于接收所述下游Transfer单元转发的响应数据,并依据基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引。
Mockserver单元30在接收到下游Transfer单元20转发来的下游响应数据后,依据基准流量环境中被测模块发送给下游模块的请求为响应数据建立索引,使得在收到克隆环境中被测模块的请求后能够返回对应的响应数据。本发明提供一种优选方式建立索引:
下游Transfer单元20拦截被测模块向其下游模块发送的请求,根据该请求生成一个唯一的key,之后将该请求转发至下游模块,下游模块在处理该请求后返回一个响应数据给被测模块,将这个响应数据与之前得到的key形成对应关系后转发至Mockserver单元30,同时将响应数据返回至被测模块。
其中,根据被测模块向其下游模块发送的请求生成key可以但不限于用下述方式来实现:选取请求中的能标识该请求的字段,如uuid,之后用md5算法根据所选取的字段计算出key值;或者,采用现有的签名算法计算请求的签名,将所得签名作为key值。
Mockserver单元30在接收到响应数据与对应的key后,将响应数据保存在特定文件中,保存时,记录该响应数据在该特定文件中存储位置的offset(偏移量)和该响应数据的length(长度),该响应数据对应的offset和length以key为标识。当基准流量环境中的下游模块数量超过一个时,需将不同下游模块的响应数据保存在不同的特定文件中,由于每个响应数据都对应一个可以,因此需要再建立一层索引来保存下游模块对应的多个key的对应关系,可以以下游模块在基准流量环境中的链路编号为标识,对应下游模块响应数据的key值建立统一的索引,即一个下游模块的所有响应数据对应一个索引。
需要说明的是,在上述索引的建立方法中,将响应数据保存在特定文件中时,还可以选取现有算法,如模运算,对key进行进一步计算,之后将计算所得结果作为响应数据的offset和length的标识。
Mockserver单元30,还用于在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
克隆环境中的被测模块接收上游Transfer单元10转发来的上游源数据后,经过内部处理,会形成一个请求并向下游发送,Mockserver单元30在接收到该请求后,根据该请求利用所建立的索引返回对应的响应数据至被测模块。若索引的建立采用了所描述的优选方式,那么Mockserver单元30在接收到被测模块发送的请求后,用与优选方式中相同的方式根据该请求生成key,并根据该key查找对应的响应数据返回给被测模块,当基准流量环境中的下游模块数量超过1个时,则先根据链路编号查找对应的下游模块的索引,再在查找到的索引中根据key查找对应的响应数据的offset和length,之后从相应的特定文件提取该响应数据并返回至被测模块。
随着下游Transfer单元20不断将响应数据转发至Mockserver单元30并被保存到索引中,索引中的数据越来越多,为了不让索引过于膨胀,需要对索引进行整理。所以,Mockserver单元30,还可以用于按照数据存入所述索引中的时间顺序定期删除所述索引中的数据,使所述索引中的数据量不超过预先设置的数量。
Mockserver单元30在将数据添加至索引中时,为数据分配一个id值,初始id值为1,之后每加入一个数据,id值加1。例如,索引表初始建立后所保存的第一个数据id为1,第二个数据id为2,索引表在存储了若干数据后最大id值为897,则新存入的下一个数据id为898。根据测试所需数据规模,设置索引中所要保存的数据量的最大值,如50万,在整理时,如果数据的id值小于当前索引表中的最大id值减去50万后所得的值,则删除该数据。例如,数据id值为3675,最大id值为504017,3675<504017-500000,所以删除该数据,若数据id值为5329,5329>504017-500000,所以保留该数据。
对索引的整理可以定期进行,如每半小时整理一次。同时,为了避免每次整理时间过长,可在整理时将索引中的数据分批整理,每整理一批数据后间隔一段时间再整理下一批数据。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种产生克隆环境的方法,其特征在于,所述克隆环境用于对被测模块进行测试,该方法包括:
拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块;并且,拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至克隆环境,并在克隆环境中依据所述基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引;
在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
2.根据权利要求1所述的方法,其特征在于,将所述基准流量环境中下游模块返回至被测模块的响应数据转发至克隆环境之前,还包括:根据基准流量环境中被测模块发送给下游模块的请求生成关键值key,之后将该关键值key与下游响应数据形成对应关系转发至克隆环境。
3.根据权利要求2所述的方法,其特征在于,当基准流量环境中的下游模块数量超过一个时,将各下游模块的所述对应关系分别对应存储至以各下游模块的链路编号为标识的特定文件;
在利用所述索引向被测模块返回对应的响应数据时,到对应下游模块的链路编号为标识的特定文件中查询所述响应数据。
4.根据权利要求1所述的方法,其特征在于,该方法还包括:
按照响应数据存入所述索引中的时间顺序定期删除所述索引中的响应数据,使所述索引中的数据量不超过预先设置的数量。
5.根据权利要求4所述的方法,其特征在于,所述按照响应数据存入所述索引中的时间顺序定期删除所述索引中的响应数据,具体包括:
当所述索引中任一响应数据的id小于当前所述索引响应数据中的最大id减去所述预先设置的数量所得的值时,删除该响应数据,其中,所述响应数据的id为:将响应数据保存至所述索引中时为该响应数据分配的id,初始id为1,每加入一个响应数据,id值加1。
6.一种产生克隆环境的装置,其特征在于,该装置包括:
上游转发Transfer单元,用于拦截基准流量环境中上游模块发送至被测模块的源数据,将该源数据发送至基准流量环境中的被测模块后,达到预设延迟时长时,还将该源数据转发至克隆环境中的被测模块;
下游转发Transfer单元,用于拦截基准流量环境中下游模块返回至被测模块的响应数据,将该响应数据返回至基准流量环境中的被测模块时还转发至模拟服务器Mockserver单元;
模拟服务器Mockserver单元,用于接收所述下游转发Transfer单元转发的响应数据,并依据基准流量环境中被测模块发送给下游模块的请求为所述响应数据建立索引;还用于在所述克隆环境中依据被测模块向其下游发送的请求,利用所述索引向被测模块返回对应的响应数据。
7.根据权利要求6所述的装置,其特征在于,所述下游转发Transfer单元将基准流量环境中被测模块的下游响应数据转发至所述模拟服务器Mockserver单元之前,还执行:根据基准流量环境中被测模块发送给下游模块的请求生成关键值key,之后将该关键值key与下游响应数据形成对应关系转发至所述模拟服务器Mockserver单元。
8.根据权利要求7所述的装置,其特征在于,当基准流量环境中的下游模块数量超过一个时,所述模拟服务器Mockserver单元将各下游模块的所述对应关系分别对应存储至以各下游模块的链路编号为标识的特定文件;
所述模拟服务器Mockserver单元在利用所述索引向被测模块返回对应的响应数据时,到对应下游模块的链路编号为标识的特定文件中查询所述响应数据。
9.根据权利要求6所述的装置,其特征在于,所述模拟服务器Mockserver单元还用于:按照响应数据存入所述索引中的时间顺序定期删除所述索引中的响应数据,使所述索引中的数据量不超过预先设置的数量。
10.根据权利要求9所述的装置,其特征在于,所述模拟服务器Mockserver单元按照响应数据存入所述索引中的时间顺序定期删除所述索引中的响应数据,具体执行:
当所述索引中任一响应数据的id小于当前所述索引响应数据中的最大id减去所述预先设置的数量所得的值时,删除该响应数据,其中,所述响应数据的id为:将响应数据保存至所述索引中时为该响应数据分配的id,初始id值为1,每加入一个响应数据时,则id值加1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210332741.0A CN103684895B (zh) | 2012-09-10 | 2012-09-10 | 一种产生克隆环境的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210332741.0A CN103684895B (zh) | 2012-09-10 | 2012-09-10 | 一种产生克隆环境的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103684895A CN103684895A (zh) | 2014-03-26 |
CN103684895B true CN103684895B (zh) | 2018-08-10 |
Family
ID=50321276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210332741.0A Active CN103684895B (zh) | 2012-09-10 | 2012-09-10 | 一种产生克隆环境的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103684895B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106973095A (zh) * | 2017-03-27 | 2017-07-21 | 慧影医疗科技(北京)有限公司 | 基于dicom协议的代理转发方法及装置 |
CN110995640B (zh) * | 2019-09-19 | 2022-04-05 | ***股份有限公司 | 识别网络攻击的方法及蜜罐防护*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001183A (zh) * | 2007-01-10 | 2007-07-18 | 网之易信息技术(北京)有限公司 | 一种网络应用软件的测试方法和*** |
CN101232412A (zh) * | 2008-02-18 | 2008-07-30 | 中兴通讯股份有限公司 | 一种通讯网元性能测试设备及方法 |
CN101576848A (zh) * | 2008-05-09 | 2009-11-11 | 北京世纪拓远软件科技发展有限公司 | 模拟*** |
CN102426551A (zh) * | 2011-11-04 | 2012-04-25 | 百度在线网络技术(北京)有限公司 | 测试数据筛选方法及装置、测试数据构造方法及装置 |
CN102510346A (zh) * | 2011-11-18 | 2012-06-20 | 百度在线网络技术(北京)有限公司 | 网络设备的测试方法、***及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110282642A1 (en) * | 2010-05-15 | 2011-11-17 | Microsoft Corporation | Network emulation in manual and automated testing tools |
-
2012
- 2012-09-10 CN CN201210332741.0A patent/CN103684895B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001183A (zh) * | 2007-01-10 | 2007-07-18 | 网之易信息技术(北京)有限公司 | 一种网络应用软件的测试方法和*** |
CN101232412A (zh) * | 2008-02-18 | 2008-07-30 | 中兴通讯股份有限公司 | 一种通讯网元性能测试设备及方法 |
CN101576848A (zh) * | 2008-05-09 | 2009-11-11 | 北京世纪拓远软件科技发展有限公司 | 模拟*** |
CN102426551A (zh) * | 2011-11-04 | 2012-04-25 | 百度在线网络技术(北京)有限公司 | 测试数据筛选方法及装置、测试数据构造方法及装置 |
CN102510346A (zh) * | 2011-11-18 | 2012-06-20 | 百度在线网络技术(北京)有限公司 | 网络设备的测试方法、***及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103684895A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10079879B2 (en) | Weighted rendezvous hashing | |
CN103841170B (zh) | 一种云存储方法和服务器 | |
JP5719323B2 (ja) | 分散処理システム、ディスパッチャおよび分散処理管理装置 | |
CN102841846B (zh) | 一种基于Hadoop的软件测试方法、装置和*** | |
CN103176849B (zh) | 一种基于资源分类的虚拟机集群的部署方法 | |
CN110034972B (zh) | 服务器压力测试方法和装置 | |
CN105094981B (zh) | 一种数据处理的方法及装置 | |
CN109908585A (zh) | 一种文件处理方法及***、计算设备及存储介质 | |
CN109325056A (zh) | 一种大数据处理方法及装置、通信设备 | |
CN103684895B (zh) | 一种产生克隆环境的方法和装置 | |
CN109302300A (zh) | 数据分配方法及装置、数据处理方法及服务器 | |
KR20220058606A (ko) | 자원 관리 플랫폼에 기반하는 태스크 분배 방법 및 시스템 | |
CN102882960B (zh) | 一种资源文件的发送方法及装置 | |
CN106201865A (zh) | 一种应用程序编程接口api测试方法、装置及终端设备 | |
CN103605610A (zh) | 一种基于Hadoop 的软件测试***与方法 | |
CN105045957B (zh) | 为多边形引擎提供几何实体数据服务的*** | |
JPWO2009130912A1 (ja) | データ利用状況追跡システム、マネージャ装置、エージェント装置、データ利用状況追跡方法及びプログラム | |
CA2930542A1 (en) | Storage utility network | |
CN110909072B (zh) | 一种数据表建立方法、装置及设备 | |
CN113037791A (zh) | 运维方法和***、计算机可读存储介质 | |
CN109446074B (zh) | 点播分发***压力测试方法及装置、计算机装置及计算机存储介质 | |
JP7074188B2 (ja) | セキュリティ対処能力測定システム、方法及びプログラム | |
JPWO2012033110A1 (ja) | アプリケーション構成システム、方法、及び、プログラム | |
CN108206838B (zh) | 一种负载均衡***、方法及装置 | |
JP6734303B2 (ja) | 情報処理方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |