CN107395464A - 一种服务器测试方法、装置及api网关 - Google Patents
一种服务器测试方法、装置及api网关 Download PDFInfo
- Publication number
- CN107395464A CN107395464A CN201710810925.6A CN201710810925A CN107395464A CN 107395464 A CN107395464 A CN 107395464A CN 201710810925 A CN201710810925 A CN 201710810925A CN 107395464 A CN107395464 A CN 107395464A
- Authority
- CN
- China
- Prior art keywords
- server
- online service
- service request
- request
- tested
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种服务器测试方法、装置及API网关,包括:接收客户端发送给线上服务器的线上服务请求;对线上服务请求进行复制,将复制得到的线上服务请求发送给被测服务器;基于被测服务器响应复制得到的线上服务请求得到的请求响应结果,确定被测服务器的测试结果。由于本申请是利用线上服务请求对被测服务器进行测试,而线上服务请求为客户端与线上服务器之间进行在线交互过程中传递的真实线上服务请求,能够准确反映线上传递过程中出现的问题,因此,本申请中利用客户端发送至线上服务器的线上服务请求对被测服务器进行测试的方式,能够提高对被测服务器进行测试的准确性。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种服务器测试方法、装置及API(Application Programming Interface,应用程序编程接口)网关。
背景技术
服务器是提供计算服务的设备,服务器主要与客户端进行交互,用来处理客户端发送的服务请求,并向客户端返回相应的响应信息。由于服务器需要提供高可靠的服务,因此,服务器在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高,服务器在正式上线运行之前都需要经过多种多样的测试,来保证服务器满足设计要求。
现有技术中都采用对服务器进行线下测试的方式,在线下测试中,由于发送至服务器的服务请求并不是真实线上客户端发送的,而是通过模拟器模拟的服务请求,而通过模拟器模拟的服务请求,往往并不能准确体现出线上传递过程中出现的问题,所以说,现有技术中,通过了线下测试的服务器在上线之后,还是会出现各种各样的问题。因此,现有技术对服务器进行线下测试的方式存在着测试准确性低的问题。
发明内容
有鉴于此,本发明实施例提供一种服务器测试方法、装置及API网关,能够解决现有技术对服务器进行线下测试的方式存在的测试准确性低的问题。
为实现上述目的,本发明实施例提供如下技术方案:
一种服务器测试方法,包括:
接收客户端发送给线上服务器的线上服务请求;
对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;
基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
优选的,在对所述线上服务请求进行复制之后,还包括:
将所述线上服务请求发送至线上服务器。
优选的,在将所述线上服务请求发送至线上服务器之后,还包括:
接收所述线上服务器响应所述线上服务请求返回的线上响应结果,并转发给客户端。
优选的,所述基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果的过程包括:
接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;
基于所述请求响应结果,确定所述被测服务器的测试结果。
优选的,所述基于所述请求响应结果,确定所述被测服务器的测试结果的过程包括:
基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;
和/或;
基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;
和/或;
基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。
优选的,在接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果之后,还包括:
禁止向所述客户端返回所述请求响应结果。
优选的,所述接收客户端发送给线上服务器的线上服务请求的过程包括:
接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;
将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求。
一种服务器测试装置,包括:
线上服务请求接收模块,用于接收客户端发送给线上服务器的线上服务请求;
线上服务请求复制模块,用于对所述线上服务请求进行复制;
第一发送模块,用于将复制得到的线上服务请求发送给被测服务器;
测试结果确定模块,用于基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
优选的,还包括:
第二发送模块,用于将所述线上服务请求发送至线上服务器。
优选的,还包括:
线上响应结果接收模块,用于接收所述线上服务器响应所述线上服务请求返回的线上响应结果;
线上响应结果转发模块,用于将所述线上响应结果转发给客户端。
优选的,所述测试结果确定模块具体用于:
接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;基于所述请求响应结果,确定所述被测服务器的测试结果。
优选的,所述测试结果确定模块包括:
第一测试结果确定子模块,用于基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;
和/或;
第二测试结果确定子模块,用于基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;
和/或;
第三测试结果确定子模块,用于基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。
优选的,还包括:
禁止模块,用于禁止向所述客户端返回所述请求响应结果。
优选的,所述线上服务请求接收模块包括:
线上服务请求接收子模块,用于接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;
线上服务请求转换模块,用于将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求。
一种API网关,包括:如上所述的服务器测试装置。
基于上述技术方案,本发明实施例公开了一种服务器测试方法、装置及API网关,包括:接收客户端发送给线上服务器的线上服务请求;对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。由于本申请是将复制得到的线上服务请求发送给被测服务器,并基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。即本申请是利用线上服务请求对被测服务器进行测试,而线上服务请求为客户端与线上服务器之间进行在线交互过程中传递的真实线上服务请求,能够准确反映线上传递过程中出现的问题,因此,本发明实施例中利用客户端发送至线上服务器的线上服务请求对被测服务器进行测试的方式,能够提高对被测服务器进行测试的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种服务器测试***架构图;
图2为本发明实施例提供的服务器测试方法的信令流程图;
图3为本发明实施例提供的一种服务器测试方法的流程图;
图4为本发明实施例提供的另一种服务器测试方法的流程图;
图5为本发明实施例提供的API网关的处理架构图;
图6为本发明实施例提供的一种服务器测试装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种服务器测试***架构图,参照图1,该***可以包括:客户端10、API网关20、线上服务器30以及被测服务器40;线上服务器30以及被测服务器40可以为集群服务器,架设在网络侧,线上服务器是与被测服务器相对的,线上服务器是用于进行正常的线上业务处理的服务器,被测服务器是用来对其性能进行测试的服务器。客户端10可以装载在智能手机、平板电脑、笔记本电脑等用户设备上,其上安装有应用软件,应用软件可以为任意类型,比如游戏类应用软件、社交类应用软件、购物类应用软件等。API网关20是微服务架构中重要的核心组件之一。
基于图1所示***架构,图2示出了本发明实施例提供的服务器测试方法的信令流程图,结合图1和图2所示,该流程可以包括:
步骤S10:客户端将线上服务请求发送至API网关;
步骤S20:API网关对线上服务请求进行复制;
步骤S30:API网关将复制得到的线上服务请求发送给被测服务器;
步骤S40:API网关将线上服务请求发送至线上服务器;
步骤S50:线上服务器响应所述线上服务请求,向API网关返回线上响应结果;
步骤S60:API网关将线上响应结果转发给客户端;
步骤S70:被测服务器响应所述复制得到的线上服务请求,向API网关返回请求响应结果;
步骤S80:API网关基于所述请求响应结果,确定所述被测服务器的测试结果。
需要说明的是,本发明实施例中的上述步骤S30以及步骤S40可以同时执行,也可以先后执行,执行顺序并不限制。即API网关将复制得到的线上服务请求发送给被测服务器的同时,将线上服务请求发送至线上服务器;也可以API网关先将复制得到的线上服务请求发送给被测服务器,再将线上服务请求发送至线上服务器;还可以API网关先将线上服务请求发送至线上服务器,再将复制得到的线上服务请求发送给被测服务器。
可选的,由于本发明实施例中采用的是异步IO处理模式,API网关在接收到线上服务器返回的线上响应结果之后,即可将线上响应结果转发给客户端,并不需要等待被测服务器返回请求响应结果,被测服务器返回的请求响应结果并不会向客户端传递,也就是说,被测服务器返回的请求响应结果并不会对客户端产生影响。
由于本申请是将复制得到的线上服务请求发送给被测服务器,并基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。即本申请是利用线上服务请求对被测服务器进行测试,而线上服务请求为客户端与线上服务器之间进行在线交互过程中传递的真实线上服务请求,能够准确反映线上传递过程中出现的问题,因此,本发明实施例中利用客户端发送至线上服务器的线上服务请求对被测服务器进行测试的方式,能够提高对被测服务器进行测试的准确性。
图3示出了一种服务器测试方法的流程图,该方法可由API网关实现,参照图3,所述方法可以包括:
步骤S100、接收客户端发送给线上服务器的线上服务请求;
需要说明的是,线上服务请求是客户端与线上服务器之间进行正常的线上业务处理过程中传递的服务请求,能够准确反映线上传递过程中出现的问题。
可选的,本发明实施例中的API网关能够支持多协议,例如:RPC(RemoteProcedure Call,远程过程调用)协议以及HTTP(Hyper Text Transfer Protocol,超文本传输协议)等,本发明实施例不做具体限定。
可选的,本发明实施例中的API网关还可以进行协议的转换,具体的,所述接收客户端发送给线上服务器的线上服务请求的过程包括:接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求,在转换完成后,后续的线上服务请求都是符合第二预设协议的线上服务请求。
例如:本发明实施例中可以将符合RPC协议的线上服务请求,转换成符合HTTP格式的线上服务请求,具体转换过程可以为:提取RPC协议的线上服务请求的协议类型以及线上服务请求中的内容,将所述线上服务请求中的内容转换成符合HTTP格式的内容,得到符合HTTP格式的线上服务请求。
步骤S110、对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;
本发明实施例中复制得到的线上服务请求为所述线上服务请求的复制版本,本发明实施例中的API网关可以直接在应用层对线上服务请求进行复制,得到线上服务请求的复制版本,而不需要网络协议栈的参与,不需要对底层的网络协议栈进行任何的改进,具有易用性和通用性。
步骤S120、基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
需要说明的是,被测服务器在接收到复制得到的线上服务请求之后,会响应所述复制得到的线上服务请求,生成请求响应结果。
本发明实施例中的API网关可以接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;并基于所述请求响应结果,确定所述被测服务器的测试结果。另一方面,可以由技术人员在被测服务器侧,基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。
需要说明的是,本申请可以采用多种方式,基于所述请求响应结果,确定所述被测服务器的测试结果,具体来说,本申请中列举如下几种方式,确定所述被测服务器的测试结果:
基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;当响应结果中包含的响应时间超过预设响应时间阈值的情况下,表明被测服务器对复制得到的线上服务请求的响应超时,确定所述被测服务器的测试结果为响应超时。需要说明的是,预设响应时间阈值可以由技术人员依据被测服务器的性能以及型号来设定,本申请不做具体限定。
和/或;
基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;响应错误率为请求响应发生错误的概率,该响应错误率会携带在请求响应结果中返回给API网关,本发明实施例中通过将响应错误率与预设响应错误率阈值进行比对的方式,确定所述被测服务器的测试结果。预设响应错误率阈值可以由技术人员依据被测服务器的性能以及型号来设定,本申请不做具体限定。
和/或;
基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。当请求响应结果中包含错误响应标识的情况下,表明被测服务器对复制得到的线上服务请求响应错误,并且,不同的错误响应标识的类型表明了被测服务器产生了不同类型的响应错误,技术人员可以依据该同的错误响应标识的类型确定被测服务器具有的问题缺陷,从而完成对被测服务器的测试。
另外,本发明实施例中还可以依据被测服务器是否向API网关返回响应结果,即被测服务器是否对复制得到的线上服务请求产生响应,来确定所述被测服务器的测试结果。
需要说明的是,本发明实施例中被测服务器的测试结果体现了被测服务器的请求处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面的性能。
由于本申请是将复制得到的线上服务请求发送给被测服务器,并基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。即本申请是利用线上服务请求对被测服务器进行测试,而线上服务请求为客户端与线上服务器之间进行在线交互过程中传递的真实线上服务请求,能够准确反映线上传递过程中出现的问题,因此,本发明实施例中利用客户端发送至线上服务器的线上服务请求对被测服务器进行测试的方式,能够提高对被测服务器进行测试的准确性。
可选的,图4示出了另一种服务器测试方法的流程图,该方法可由API网关实现,参照图4,所述方法可以包括:
步骤S200、接收客户端发送给线上服务器的线上服务请求;
步骤S210、对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;
步骤S220、将所述线上服务请求发送至线上服务器;
需要说明的是,由于客户端与线上服务器之间正在进行正常的线上业务交互,在API网关拦截了客户端发送给线上服务器的线上服务请求之后,为了保证客户端与线上服务器之间线上业务交互的正常进行,API网关还是需要将线上服务请求转发至线上服务器。
步骤S230、接收所述线上服务器响应所述线上服务请求返回的线上响应结果,并转发给客户端;
可选的,线上服务器在接收到线上服务请求之后,会响应所述线上服务请求,生成线上响应结果,并将线上响应结果返回给API网关,API网关再将所述线上响应结果返回给客户端,从而完成客户端与线上服务器之间正常的线上业务交互。
步骤S240、基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
本发明实施例中,由于被测服务器接收到复制得到的线上服务请求之后,是会响应所述复制得到的线上服务请求,生成请求响应结果的,该请求响应结果是会被返回给API网关。API网关通过接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,然后基于所述请求响应结果,确定所述被测服务器的测试结果。
需要说明的是,本发明实施例中API网关在接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果之后,还包括:禁止向所述客户端返回所述请求响应结果,也就是被测服务器返回的请求响应结果并不会向客户端传递。
本发明实施例中采用的是异步IO处理模式,API网关在接收所述线上服务器响应所述线上服务请求返回的线上响应结果之后,即可以将该线上响应结果转发给客户端,无需等待被测服务器返回请求响应结果,不会影响客户端与线上服务器之间的交互。而且,被测服务器返回的请求响应结果并不会向客户端传递,该方面同样保证了被测服务器产生的请求响应结果不会对客户端与线上服务器之间的正常线上业务交互产生影响,也就是本发明在对被测服务器进行测试过程中,不会对线上环境产生影响。
可选的,如图5所示的API网关的处理架构,本发明实施例中的API网关通过引入Handler Pipeline(处理管道)模式进行操作处理,进行线上服务请求的复制,主要包含四种类型的Handler Pipeline,包括:
Prologue Handler Pipeline(前续处理管道),实际调用执行前的处理逻辑,在实际的调用发生之前执行,用户可以向其中添加自定义的处理逻辑,例如:服务器的选择逻辑等。
Process Handler Pipeline(过程处理管道),发起实际调用的逻辑,功能包括但不限于服务请求复制,动态路由等,用户可进行逻辑扩展,用户可以在此将线上服务请求复制后,将复制得到的线上服务请求发送至被测服务器。
Epilogue Handler Pipeline(后续处理管道),实际调用执行后的处理逻辑,在实际的调用发生之后执行,用户可以向其中添加自定义处理逻辑,例如:流量计算处理逻辑等。
Error Handler Pipeline(错误处理管道),错误处理逻辑,用于在上述三个Handler Pipeline执行出现问题的情况下,跳转至Error Handler Pipeline,向客户端返回错误处理结果。
需要说明的是,本发明中客户端和API网关之间的调用是纯异步模式的,ProcessHandler Pipeline和线上服务器或者被测服务器之间的调用也是纯异步模式的。
下面对本发明实施例提供的服务器测试装置进行介绍,下文描述的服务器测试装置,可与上文描述的服务器测试方法相互对应参照。下文描述的服务器测试装置,可以认为是API网关为实现本发明实施例提供的服务器测试方法,所需设置的功能模块架构。
图6为本发明实施例提供的服务器测试装置的结构框图,该装置可应用于API网关,参照图6,该装置可以包括:
线上服务请求接收模块100,用于接收客户端发送给线上服务器的线上服务请求;
线上服务请求复制模块110,用于对所述线上服务请求进行复制;
第一发送模块120,用于将复制得到的线上服务请求发送给被测服务器;
测试结果确定模块130,用于基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
还包括:
第二发送模块,用于将所述线上服务请求发送至线上服务器。
还包括:
线上响应结果接收模块,用于接收所述线上服务器响应所述线上服务请求返回的线上响应结果;
线上响应结果转发模块,用于将所述线上响应结果转发给客户端。
所述测试结果确定模块具体用于:
接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;基于所述请求响应结果,确定所述被测服务器的测试结果。
所述测试结果确定模块包括:
第一测试结果确定子模块,用于基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;
和/或;
第二测试结果确定子模块,用于基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;
和/或;
第三测试结果确定子模块,用于基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。
还包括:
禁止模块,用于禁止向所述客户端返回所述请求响应结果。
所述线上服务请求接收模块包括:
线上服务请求接收子模块,用于接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;
线上服务请求转换模块,用于将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求。
一种API网关,包括:如上所述的服务器测试装置。
综上所述:
本发明实施例公开了一种服务器测试方法、装置及API网关,包括:接收客户端发送给线上服务器的线上服务请求;对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。由于本申请是将复制得到的线上服务请求发送给被测服务器,并基于所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果,确定所述被测服务器的测试结果。即本申请是利用线上服务请求对被测服务器进行测试,而线上服务请求为客户端与线上服务器之间进行在线交互过程中传递的真实线上服务请求,能够准确反映线上传递过程中出现的问题,因此,本发明实施例中利用客户端发送至线上服务器的线上服务请求对被测服务器进行测试的方式,能够提高对被测服务器进行测试的准确性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (15)
1.一种服务器测试方法,其特征在于,包括:
接收客户端发送给线上服务器的线上服务请求;
对所述线上服务请求进行复制,并将复制得到的线上服务请求发送给被测服务器;
基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
2.根据权利要求1所述的方法,其特征在于,在对所述线上服务请求进行复制之后,还包括:
将所述线上服务请求发送至线上服务器。
3.根据权利要求2所述的方法,其特征在于,在将所述线上服务请求发送至线上服务器之后,还包括:
接收所述线上服务器响应所述线上服务请求返回的线上响应结果,并转发给客户端。
4.根据权利要求1所述的方法,其特征在于,所述基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果的过程包括:
接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;
基于所述请求响应结果,确定所述被测服务器的测试结果。
5.根据权利要求4所述的方法,其特征在于,所述基于所述请求响应结果,确定所述被测服务器的测试结果的过程包括:
基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;
和/或;
基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;
和/或;
基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。
6.根据权利要求4所述的方法,其特征在于,在接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果之后,还包括:
禁止向所述客户端返回所述请求响应结果。
7.根据权利要求1-6任意一项所述的方法,其特征在于,所述接收客户端发送给线上服务器的线上服务请求的过程包括:
接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;
将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求。
8.一种服务器测试装置,其特征在于,包括:
线上服务请求接收模块,用于接收客户端发送给线上服务器的线上服务请求;
线上服务请求复制模块,用于对所述线上服务请求进行复制;
第一发送模块,用于将复制得到的线上服务请求发送给被测服务器;
测试结果确定模块,用于基于所述被测服务器响应所述复制得到的线上服务请求返回的请求响应结果,确定所述被测服务器的测试结果。
9.根据权利要求8所述的装置,其特征在于,还包括:
第二发送模块,用于将所述线上服务请求发送至线上服务器。
10.根据权利要求9所述的装置,其特征在于,还包括:
线上响应结果接收模块,用于接收所述线上服务器响应所述线上服务请求返回的线上响应结果;
线上响应结果转发模块,用于将所述线上响应结果转发给客户端。
11.根据权利要求8所述的装置,其特征在于,所述测试结果确定模块具体用于:
接收所述被测服务器响应所述复制得到的线上服务请求得到的请求响应结果;基于所述请求响应结果,确定所述被测服务器的测试结果。
12.根据权利要求11所述的装置,其特征在于,所述测试结果确定模块包括:
第一测试结果确定子模块,用于基于所述请求响应结果中包含的响应时间,确定所述被测服务器的测试结果;
和/或;
第二测试结果确定子模块,用于基于所述请求响应结果中包含的响应错误率,确定所述被测服务器的测试结果;
和/或;
第三测试结果确定子模块,用于基于所述请求响应结果中包含的错误响应标识,确定所述被测服务器的测试结果。
13.根据权利要求11所述的装置,其特征在于,还包括:
禁止模块,用于禁止向所述客户端返回所述请求响应结果。
14.根据权利要求8-13任意一项所述的装置,其特征在于,所述线上服务请求接收模块包括:
线上服务请求接收子模块,用于接收客户端发送给线上服务器的符合第一预设协议的线上服务请求;
线上服务请求转换模块,用于将所述符合第一预设协议的线上服务请求转换成符合第二预设协议的线上服务请求。
15.一种应用程序编程接口API网关,其特征在于,包括:如上权利要求8-14任意一项所述的服务器测试装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710810925.6A CN107395464A (zh) | 2017-09-11 | 2017-09-11 | 一种服务器测试方法、装置及api网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710810925.6A CN107395464A (zh) | 2017-09-11 | 2017-09-11 | 一种服务器测试方法、装置及api网关 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107395464A true CN107395464A (zh) | 2017-11-24 |
Family
ID=60352174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710810925.6A Pending CN107395464A (zh) | 2017-09-11 | 2017-09-11 | 一种服务器测试方法、装置及api网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107395464A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194604A (zh) * | 2018-06-05 | 2019-01-11 | 平安科技(深圳)有限公司 | 接口自动化方法、***、计算机设备和存储介质 |
CN109710535A (zh) * | 2018-12-29 | 2019-05-03 | 苏州思必驰信息科技有限公司 | 用于语音对话平台的服务校验方法及*** |
CN110798380A (zh) * | 2019-10-23 | 2020-02-14 | 北京奇艺世纪科技有限公司 | 一种数据获取方法、***、装置、测试设备及测试服务器 |
CN111258897A (zh) * | 2020-01-15 | 2020-06-09 | 网银在线(北京)科技有限公司 | 业务平台的测试方法、装置及*** |
CN111274150A (zh) * | 2020-02-07 | 2020-06-12 | 北京字节跳动网络技术有限公司 | 服务实例访问方法、装置和电子设备 |
CN111382058A (zh) * | 2018-12-29 | 2020-07-07 | 北京字节跳动网络技术有限公司 | 一种服务的测试方法、装置,服务器及存储介质 |
CN112363879A (zh) * | 2020-11-20 | 2021-02-12 | 上海连尚网络科技有限公司 | 缓存服务器性能测试方法、装置、设备和介质 |
CN113381913A (zh) * | 2021-08-13 | 2021-09-10 | 飞狐信息技术(天津)有限公司 | 流量处理方法、网关、流量对比***及装置 |
CN113630310A (zh) * | 2020-05-06 | 2021-11-09 | 北京农信互联科技集团有限公司 | 一种分布式高可用网关*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001183A (zh) * | 2007-01-10 | 2007-07-18 | 网之易信息技术(北京)有限公司 | 一种网络应用软件的测试方法和*** |
CN103580943A (zh) * | 2012-08-03 | 2014-02-12 | 亿赞普(北京)科技有限公司 | 一种网络软件在线测试方法和*** |
CN104410542A (zh) * | 2014-11-18 | 2015-03-11 | 小米科技有限责任公司 | 模拟测试方法及装置 |
CN105005521A (zh) * | 2015-06-26 | 2015-10-28 | 腾讯科技(北京)有限公司 | 测试方法及装置 |
CN106375139A (zh) * | 2015-07-23 | 2017-02-01 | 腾讯科技(北京)有限公司 | 复制请求的方法、装置和*** |
CN106470136A (zh) * | 2015-08-21 | 2017-03-01 | 腾讯科技(北京)有限公司 | 平台测试方法以及平台测试*** |
CN106789432A (zh) * | 2016-12-28 | 2017-05-31 | 中软信息***工程有限公司 | 基于自主可控云平台技术的测试*** |
-
2017
- 2017-09-11 CN CN201710810925.6A patent/CN107395464A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001183A (zh) * | 2007-01-10 | 2007-07-18 | 网之易信息技术(北京)有限公司 | 一种网络应用软件的测试方法和*** |
CN103580943A (zh) * | 2012-08-03 | 2014-02-12 | 亿赞普(北京)科技有限公司 | 一种网络软件在线测试方法和*** |
CN104410542A (zh) * | 2014-11-18 | 2015-03-11 | 小米科技有限责任公司 | 模拟测试方法及装置 |
CN105005521A (zh) * | 2015-06-26 | 2015-10-28 | 腾讯科技(北京)有限公司 | 测试方法及装置 |
CN106375139A (zh) * | 2015-07-23 | 2017-02-01 | 腾讯科技(北京)有限公司 | 复制请求的方法、装置和*** |
CN106470136A (zh) * | 2015-08-21 | 2017-03-01 | 腾讯科技(北京)有限公司 | 平台测试方法以及平台测试*** |
CN106789432A (zh) * | 2016-12-28 | 2017-05-31 | 中软信息***工程有限公司 | 基于自主可控云平台技术的测试*** |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194604A (zh) * | 2018-06-05 | 2019-01-11 | 平安科技(深圳)有限公司 | 接口自动化方法、***、计算机设备和存储介质 |
CN109710535B (zh) * | 2018-12-29 | 2022-04-12 | 思必驰科技股份有限公司 | 用于语音对话平台的服务校验方法及*** |
CN109710535A (zh) * | 2018-12-29 | 2019-05-03 | 苏州思必驰信息科技有限公司 | 用于语音对话平台的服务校验方法及*** |
CN111382058B (zh) * | 2018-12-29 | 2024-02-02 | 北京字节跳动网络技术有限公司 | 一种服务的测试方法、装置,服务器及存储介质 |
CN111382058A (zh) * | 2018-12-29 | 2020-07-07 | 北京字节跳动网络技术有限公司 | 一种服务的测试方法、装置,服务器及存储介质 |
CN110798380A (zh) * | 2019-10-23 | 2020-02-14 | 北京奇艺世纪科技有限公司 | 一种数据获取方法、***、装置、测试设备及测试服务器 |
CN111258897A (zh) * | 2020-01-15 | 2020-06-09 | 网银在线(北京)科技有限公司 | 业务平台的测试方法、装置及*** |
CN111274150B (zh) * | 2020-02-07 | 2023-08-22 | 北京字节跳动网络技术有限公司 | 服务实例访问方法、装置和电子设备 |
CN111274150A (zh) * | 2020-02-07 | 2020-06-12 | 北京字节跳动网络技术有限公司 | 服务实例访问方法、装置和电子设备 |
CN113630310A (zh) * | 2020-05-06 | 2021-11-09 | 北京农信互联科技集团有限公司 | 一种分布式高可用网关*** |
CN113630310B (zh) * | 2020-05-06 | 2024-02-02 | 北京农信数智科技有限公司 | 一种分布式高可用网关*** |
CN112363879A (zh) * | 2020-11-20 | 2021-02-12 | 上海连尚网络科技有限公司 | 缓存服务器性能测试方法、装置、设备和介质 |
CN113381913A (zh) * | 2021-08-13 | 2021-09-10 | 飞狐信息技术(天津)有限公司 | 流量处理方法、网关、流量对比***及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107395464A (zh) | 一种服务器测试方法、装置及api网关 | |
CN108365961B (zh) | 接口调用方法及终端设备、接口调用的响应方法及服务器 | |
CN109542796A (zh) | 测试方法及相关产品 | |
CN106921957B (zh) | 二次放号号码的识别方法及装置 | |
CN107332750A (zh) | 一种业务部署方法、装置以及网元 | |
CN106357609B (zh) | 一种创建用户的方法和***、公网服务器及私有云设备 | |
US7822803B2 (en) | Testing using asynchronous automated virtual agent behavior | |
CN103716356B (zh) | 基于web的存储过程操作方法、装置和*** | |
CN104731465B (zh) | 业务提供方法、装置及*** | |
CN104503768B (zh) | 一种应用程序编程接口调用方法及设备 | |
CN110034972A (zh) | 服务器压力测试方法和装置 | |
WO2022007406A1 (zh) | 一种基于k8s的服务部署方法、装置、设备、介质 | |
CN109189502A (zh) | 一种基于即时通讯公众平台的消息处理方法和相关设备 | |
CN104636460B (zh) | 一种物品信息推送方法和装置 | |
CN108076042A (zh) | 用户信息获取方法、服务器及计算机可读介质 | |
CN105635124B (zh) | 流量控制方法和装置 | |
CN107291608A (zh) | 测试脚本的生成方法、接口的订阅/注册方法及装置 | |
CN109819023A (zh) | 分布式事务处理方法及相关产品 | |
CN109274705A (zh) | 基于用户身份的服务提供方法、装置及*** | |
CN108712359A (zh) | 一种虚拟现实社交方法及*** | |
CN106888446B (zh) | 用于验证信息接收方产权身份的方法、装置和*** | |
CN109889468A (zh) | 网络数据的传输方法、***、装置、设备及存储介质 | |
CN108345508A (zh) | 接口调用测试方法和装置 | |
CN104980511B (zh) | 一种游戏数据访问方法、***以及游戏网页服务器 | |
CN110532810A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171124 |