CN106452888A - 业务服务远程探测方法及装置 - Google Patents
业务服务远程探测方法及装置 Download PDFInfo
- Publication number
- CN106452888A CN106452888A CN201610933332.4A CN201610933332A CN106452888A CN 106452888 A CN106452888 A CN 106452888A CN 201610933332 A CN201610933332 A CN 201610933332A CN 106452888 A CN106452888 A CN 106452888A
- Authority
- CN
- China
- Prior art keywords
- business service
- list
- resource address
- probe requests
- probe
- 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/50—Testing arrangements
- H04L43/55—Testing of service level quality, e.g. simulating service usage
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种业务服务远程探测方法,其包括:设定资源地址列表,该列表包括两个以上资源地址;根据该列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;获取响应于本端的所述探测请求而返回的响应数据包;解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。与现有技术相比,本发明通过控制客户机发送探测请求的发起时间,实现了对真实环境中互联网用户发起请求和大规模黑客攻击的有效模拟;通过设置资源列表,显著提高了程序开发的效率。
Description
技术领域
本发明涉及计算机软件技术领域,更具体地,涉及一种业务服务远程探测方法及装置。
背景技术
在互联网服务中,为了给用户提供高质量的业务服务,需要通过主动探测的方式、先于用户去发现互联网业务服务存在的问题。一种主动探测的方式是模拟真实环境中的互联网用户向指定的业务服务发送请求。例如,针对一些重要的、用户使用频率高的URL,使用客户机向服务器发送HTTP探测请求,并接收和解析服务器返回的响应消息,进而了解服务器响应业务请求的情况。
然而,现有的业务服务探测方法采用单个客户机发起HTTP探测请求的方式,其针对不同的URL发送探测请求时需要重复编写一个完整发送过程的代码,耗费时间且增加了人力成本,生产效率低。此外,现有的方法无法灵活设置以模拟大量黑客对服务器进行远程攻击的情况。
有鉴于此,有必要提供一种能够解决上述问题的业务服务远程探测方法及装置。
发明内容
本发明的目的在于:克服现有技术的不足,提供一种程序复用效率高、扩展性好的业务服务远程探测方法及装置,其能够有效模拟真实环境的互联网用户请求以及大规模黑客攻击时的情况。
为了实现上述目的,本发明提供了一种业务服务远程探测方法,其包括以下步骤:
设定资源地址列表,该列表包括两个以上资源地址;
根据该列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
获取响应于本端的所述探测请求而返回的响应数据包;
解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
优选地,所述资源地址列表中包含多个具有不同通信协议字段的资源地址。
优选地,所述通信协议字段设置为HTTP、HTTPS或FTP。
优选地,根据该列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步的步骤中,在预设的时间段内依照该资源地址列表所列的所述资源地址顺序,依次向各资源地址所指向的服务器发起所述业务服务的探测请求,所述预设时间段与所述其他客户端的预设时间段相同以实现所述的同步。
优选地,所述预设的时间段有多个,多个预设的时间段以周期性按日、周或月生效。
优选地,在同一所述预设时间段内,针对所述资源地址列表中的各个资源地址所指向的服务器发起的探测请求的发起时刻满足随机分布特征。
优选地,针对不同资源地址而产生的不同探测请求分别由不同的线程执行。
优选地,所述解析响应数据包所得的结果包括服务器针对于本端的所述探测请求而反馈的响应消息的生成时间字段和状态码字段。
优选地,所述将解析所得的各个结果信息汇集后上传至预定目标地址具体为,将解析所得的各个结果信息合并包含于请求消息中,向预定目标地址所指向的服务器发送该请求消息。
为了实现上述目的,本发明还提供了一种业务服务远程探测装置,其包括:
设定列表模块,用于设定资源地址列表,该列表包括两个以上资源地址;
发起请求模块,用于根据所述列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
获取响应模块,用于获取响应于本端的所述探测请求而返回的响应数据包;
解析数据模块,用于解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
与现有技术相比,本发明业务服务远程探测方法及装置的技术效果包括但不限于:
第一,通过设置资源列表,依据资源列表依次向列表中的资源地址所指向的服务器发起业务服务探测请求,使程序开发对整个探测请求的发起流程实现了模板化,前期编写一次全流程的代码,后期仅对资源列表进行修改便可实现目标资源地址的配置,提升了程序代码的重用率,显著提高了程序复用的效率。
第二,通过控制客户机向服务器发送探测请求的发起时间,实现了对真实环境中互联网用户发起请求和大规模黑客攻击的有效模拟。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明业务服务远程探测方法的流程图。
图2为本发明业务服务远程探测方法实施例中的客户端与服务器交互示意图。
图3为本发明业务服务远程探测装置的模块框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1和图2,本发明业务服务远程探测方法包括以下步骤:
步骤101,设定URL(资源地址)列表,该列表包括两个以上URL;
步骤102,根据该列表依次向其中的URL所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
步骤103,获取响应于本端的所述探测请求而返回的响应数据包;
步骤104,解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
URL用于描述互联网上的资源,是对可以从互联网上得到的资源的位置的一种表示。互联网上的每个文件都有一个唯一的URL,URL包含的信息指出文件所在的位置以及服务器应该怎么处理它。下面以客户端针对URL向服务器发起基于HTTP协议的探测请求为例,给出本发明业务服务远程探测方法的实施例。
步骤201,在本客户端中设定URL列表,列表包括多个URL。以下为设置URL列表的JAVA程序代码段。
public static List<URL>URLS=new ArrayList<URL>(){
{
add(new URL("http://channelboard.yy.com/entlobby/wonderful/videoshow.html","",0,""));//精彩世界
add(new URL("http://channelboard.yy.com/entlobby/videoshow.html?entry=panel","",0,""));//娱乐大厅
add(new URL("http://d.3g.yy.com/mobyy/nav/sing/idx?uid=1003242353","",0,""));//好声音tab页面url地址
add(new URL("http://d.3g.yy.com/mobyy/nav/talk/idx?uid=1003242353","",0,""));//脱口秀tab页面url地址
add(new URL("http://d.3g.yy.com/mobyy/nav/dance/idx?uid=1003242353","",0,""));//舞蹈tab页面url地址
add(new URL("http://d.3g.yy.com/mobyy/nav/mc/idx?uid=1003242353","",0,""));//潮音乐tab页面url地址
add(new URL("http://idx.3g.yy.com/mobyy/nav/index/idx?uid=1003242353","",0,""));//广场tab页面url地址
add(new URL("http://data.3g.yy.com/mobyy/nav/red/idx?uid=1003242353","",0,""));//潮人tab页面url地址
add(new URL("http://data.3g.yy.com/mobyy/nav/discover/near?uid=1","",0,""));//发现页面的url地址
}};
URL列表中的各个URL的内容可以任意设置,通常为一些重要的、用户使用频率高的URL。在上面的程序代码段中,URL的通信协议字段全部设置为HTTP,而在本发明的其他实施例中,URL列表可以包含多个具有不同通信协议字段的URL,这些通信协议字段可以为HTTP、HTTPS或FTP,如此,便可以通过一次设置,模拟多种基于不同通信协议的探测请求,避免对具有不同通信协议字段的URL发起探测请求时多次开发程序代码。
步骤202,在其他客户端中设置与本客户端相同的URL列表。
各个其他客户端分别部署于各个不同的机房,以模拟真实的互联网用户环境。在其他客户端中设置URL列表的过程与步骤201中的本客户端相同,此处不再赘述。
步骤203,在预设的时间段内依照URL列表所列的URL顺序,依次向各URL所指向的服务器发起业务服务的HTTP探测请求。本端的预设时间段与其他客户端的预设时间段相同。
预设的时间段可以为一个或多个,多个预设的时间段以周期性按日、周或月生效。例如,预设时间段为一日的12:00-14:00和21:00-24:00,每日生效。又如,预设时间段为周日的14:00-16:00,每周生效。在同一预设的时间段内,例如周日的14:00-16:00,设定激活多个客户端,使多个客户端根据设置好的相同的URL列表所列的URL顺序,依次向各URL所指向的服务器发起业务服务的HTTP探测请求,以模拟大量黑客同步对服务器实施攻击的状况。
需要说明的是,在本发明的其他实施例中,可以通过设置与各客户端相连接的控制中心,由控制中心统一或分别设定一个或多个客户端各自的预设时间段,或者由控制中心即时控制多个客户端开始和停止向各URL所指向的服务器发起业务服务的HTTP探测请求。
具体地,可以通过在单个客户端中设置线程池的方式,令单个客户端中针对不同资源地址而产生的不同探测请求分别由不同的线程执行,以使单个客户端中在同一时间段内依次发起的探测请求的发起时刻满足随机分布特征,符合真实用户在互联网环境中操作和发起探测请求的情形。以下为设置线程池的JAVA程序代码段。
步骤204,本客户端接收响应于本端的HTTP探测请求而返回的响应数据包,并解析各响应数据包,将解析所得的各个结果信息汇集后,批量上传至预定目标地址。
具体地,可以根据业务服务远程探测的目的对响应数据包进行解析而得到需求的结果。在本实施例中,解析所得的结果包括响应消息的生成时间字段和状态码字段。客户端将解析多个响应消息所得到时间字段与状态码字段内容合并包含于同一请求消息中,再将请求消息发送至预定目标地址所指向的服务器,以实现解析结果的批量上传。合并发送后不需针对每一个响应消息的解析结果向服务器发送一条请求消息,减少了发送请求消息的数量,减少了网络带宽资源的占用,同时减轻了服务器的处理负担。解析结果发送至预定目标地址所指向的服务器后,由该服务器进一步对解析结果进行分析和统计等处理工作。
步骤205,其他客户端接收响应于本端的HTTP探测请求而返回的响应数据包,并解析各响应数据包,将解析所得的各个结果信息汇集后,批量上传至预定目标地址。
其他客户端解析响应数据包和合并上传解析结果的过程与步骤204中的本客户端相同,此处不再赘述。
请参阅图3,本发明业务服务远程探测装置包括:
设定列表模块,用于设定资源地址列表,该列表包括两个以上资源地址;
发起请求模块,用于根据所述列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
获取响应模块,用于获取响应于本端的所述探测请求而返回的响应数据包;
解析数据模块,用于解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
设定列表模块、发起请求模块、获取响应模块和解析数据模块的工作过程分别对应于本发明业务服务远程探测方法的步骤101、102、103和104,此处不再赘述。
结合以上对本发明的详细描述可以看出,与现有技术相比,本发明业务服务远程探测方法及装置至少具有以下有益的技术效果:
第一,通过设置资源列表,依据资源列表依次向列表中的资源地址所指向的服务器发起业务服务探测请求,使程序开发对整个探测请求的发起流程实现了模板化,前期编写一次全流程的代码,后期仅对资源列表进行修改便可实现目标资源地址的配置,提升了程序代码的重用率,显著提高了程序开发的效率。
第二,通过控制客户机向服务器发送探测请求的发起时间,实现了对真实环境中互联网用户发起请求和大规模黑客攻击的有效模拟。
第三,通过将解析结果合并后包含于同一条请求消息发送,实现了解析结果的批量上传,减少上传时所发送请求消息的数量,一方面减少网络带宽资源占用,另一方面减轻了接收解析结果的服务器的处理负担。
第四,本发明的方法设计简洁、流程清晰、简单易用,从而降低了学习成本,同时其扩展性好,有利于与其他程序的对接和进一步深入开发。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本发明所提供的业务服务远程探测方法及装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种业务服务远程探测方法,其特征在于:所述方法包括以下步骤:
设定资源地址列表,该列表包括两个以上资源地址;
根据该列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
获取响应于本端的所述探测请求而返回的响应数据包;
解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
2.如权利要求1所述的业务服务远程探测方法,其特征在于:所述资源地址列表中包含多个具有不同通信协议字段的资源地址。
3.如权利要求2所述的业务服务远程探测方法,其特征在于:所述通信协议字段设置为HTTP、HTTPS或FTP。
4.如权利要求1所述的业务服务远程探测方法,其特征在于:根据该列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步的步骤中,在预设的时间段内依照该资源地址列表所列的所述资源地址顺序,依次向各资源地址所指向的服务器发起所述业务服务的探测请求,所述预设时间段与所述其他客户端的预设时间段相同以实现所述的同步。
5.如权利要求4所述的业务服务远程探测方法,其特征在于:所述预设的时间段有多个,多个预设的时间段以周期性按日、周或月生效。
6.如权利要求4所述的业务服务远程探测方法,其特征在于:在同一所述预设时间段内,针对所述资源地址列表中的各个资源地址所指向的服务器发起的探测请求的发起时刻满足随机分布特征。
7.如权利要求6所述的业务服务远程探测方法,其特征在于:针对不同资源地址而产生的不同探测请求分别由不同的线程执行。
8.如权利要求1所述的业务服务远程探测方法,其特征在于:所述解析响应数据包所得的结果包括服务器针对于本端的所述探测请求而反馈的响应消息的生成时间字段和状态码字段。
9.如权利要求1所述的业务服务远程探测方法,其特征在于:所述将解析所得的各个结果信息汇集后上传至预定目标地址具体为,将解析所得的各个结果信息合并包含于请求消息中,向预定目标地址所指向的服务器发送该请求消息。
10.一种业务服务远程探测装置,其特征在于:包括:
设定列表模块,用于设定资源地址列表,该列表包括两个以上资源地址;
发起请求模块,用于根据所述列表依次向其中的所述资源地址所指向的服务器发起针对所述业务服务的探测请求,使该探测请求与其他客户端的相同探测请求的发起保持同步;
获取响应模块,用于获取响应于本端的所述探测请求而返回的响应数据包;
解析数据模块,用于解析各响应数据包,将解析所得的各个结果信息汇集后,上传至预定目标地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610933332.4A CN106452888A (zh) | 2016-10-24 | 2016-10-24 | 业务服务远程探测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610933332.4A CN106452888A (zh) | 2016-10-24 | 2016-10-24 | 业务服务远程探测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106452888A true CN106452888A (zh) | 2017-02-22 |
Family
ID=58177609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610933332.4A Pending CN106452888A (zh) | 2016-10-24 | 2016-10-24 | 业务服务远程探测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106452888A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109634605A (zh) * | 2018-12-05 | 2019-04-16 | 苏州思必驰信息科技有限公司 | 用于web前端的模拟数据生成方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092100A (en) * | 1997-11-21 | 2000-07-18 | International Business Machines Corporation | Method for intelligently resolving entry of an incorrect uniform resource locator (URL) |
CN101179758A (zh) * | 2007-11-23 | 2008-05-14 | 丁峰 | 一种终端下载媒体资源的方法 |
CN101848116A (zh) * | 2010-04-21 | 2010-09-29 | 中国海洋大学 | 一种简单快捷自动的Web服务器压力测试方法 |
CN102404345A (zh) * | 2011-12-26 | 2012-04-04 | 山石网科通信技术(北京)有限公司 | 分布式攻击阻止方法及装置 |
CN103051717A (zh) * | 2012-12-25 | 2013-04-17 | 北京小米科技有限责任公司 | 一种http请求处理的方法、装置和设备 |
CN105743934A (zh) * | 2014-12-08 | 2016-07-06 | 网宿科技股份有限公司 | 一种http访问可用性的优化方法和移动智能终端 |
-
2016
- 2016-10-24 CN CN201610933332.4A patent/CN106452888A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092100A (en) * | 1997-11-21 | 2000-07-18 | International Business Machines Corporation | Method for intelligently resolving entry of an incorrect uniform resource locator (URL) |
CN101179758A (zh) * | 2007-11-23 | 2008-05-14 | 丁峰 | 一种终端下载媒体资源的方法 |
CN101848116A (zh) * | 2010-04-21 | 2010-09-29 | 中国海洋大学 | 一种简单快捷自动的Web服务器压力测试方法 |
CN102404345A (zh) * | 2011-12-26 | 2012-04-04 | 山石网科通信技术(北京)有限公司 | 分布式攻击阻止方法及装置 |
CN103051717A (zh) * | 2012-12-25 | 2013-04-17 | 北京小米科技有限责任公司 | 一种http请求处理的方法、装置和设备 |
CN105743934A (zh) * | 2014-12-08 | 2016-07-06 | 网宿科技股份有限公司 | 一种http访问可用性的优化方法和移动智能终端 |
Non-Patent Citations (2)
Title |
---|
A486515: "JMETER 参数化URL", 《博客园》 * |
YE_KWII: "Jmeter之分布式测试", 《51CTO博客》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109634605A (zh) * | 2018-12-05 | 2019-04-16 | 苏州思必驰信息科技有限公司 | 用于web前端的模拟数据生成方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gutwin et al. | Real-time groupware in the browser: testing the performance of web-based networking | |
CN109568947A (zh) | 一种云游戏控制方法、装置、设备和计算机存储介质 | |
US20030182408A1 (en) | Load test system for a server and method of use | |
CN106981015A (zh) | 互动礼物的实现方法 | |
CN103346952B (zh) | 一种加入群组的方法及装置 | |
CN103702238A (zh) | 一种多屏视频共享方法及终端、服务器 | |
CN109525461A (zh) | 一种网络设备的测试方法、装置、设备及存储介质 | |
CN105959177A (zh) | 一种游戏服务器压力测试脚本的生成方法和装置 | |
CN106303735B (zh) | 一种弹幕显示系统、方法、装置以及业务客户端 | |
CN107433040A (zh) | 游戏数据更改方法及系统 | |
CN107566346A (zh) | 3d游戏数据的传输方法、装置以及存储介质、电子装置 | |
CN104008055B (zh) | 软件测试的方法、设备及系统 | |
CN110225064A (zh) | 监测僵尸网络攻击行为的方法、装置、设备和存储介质 | |
CN109701278A (zh) | 一种游戏教学方法、装置、设备及存储介质 | |
CN105407149B (zh) | 消息推送方法及装置 | |
CN112040011A (zh) | 基于rpa及ai的模拟训练方法、装置、计算设备和介质 | |
Megyesi et al. | User behavior based traffic emulator: A framework for generating test data for DPI tools | |
CN105959174B (zh) | 一种智能设备平台的测试方法和装置 | |
CN115543756B (zh) | 灯效展示方法、设备以及存储介质 | |
CN114500110A (zh) | 一种网络靶场并发流量动态生成系统及方法 | |
CN106502856B (zh) | 一种信息处理方法及装置 | |
CN106452888A (zh) | 业务服务远程探测方法及装置 | |
CN110022323A (zh) | 一种基于WebSocket与Redux的跨终端实时交互的方法和系统 | |
CN111773661B (zh) | 基于直播界面组队游戏的系统、方法及装置 | |
CN109194729A (zh) | 一种信息通讯系统以及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20170222 |