CN106850830A - 一种业务请求处理方法、装置、系统和相关服务器 - Google Patents

一种业务请求处理方法、装置、系统和相关服务器 Download PDF

Info

Publication number
CN106850830A
CN106850830A CN201710112916.XA CN201710112916A CN106850830A CN 106850830 A CN106850830 A CN 106850830A CN 201710112916 A CN201710112916 A CN 201710112916A CN 106850830 A CN106850830 A CN 106850830A
Authority
CN
China
Prior art keywords
business
service
service request
request
separator
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.)
Granted
Application number
CN201710112916.XA
Other languages
English (en)
Other versions
CN106850830B (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.)
Nsfocus Technologies Inc
Nsfocus Technologies Group Co Ltd
Original Assignee
NSFOCUS Information Technology Co Ltd
Beijing NSFocus Information Security Technology 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 NSFOCUS Information Technology Co Ltd, Beijing NSFocus Information Security Technology Co Ltd filed Critical NSFOCUS Information Technology Co Ltd
Priority to CN201710112916.XA priority Critical patent/CN106850830B/zh
Publication of CN106850830A publication Critical patent/CN106850830A/zh
Application granted granted Critical
Publication of CN106850830B publication Critical patent/CN106850830B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种业务请求处理方法、装置、系统和相关服务器,所述业务处理方法,包括:获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。采用本发明提供的方法,能够根据业务的业务类型,为其调用相应的逻辑接口,体现了对业务请求的定制化处理过程,同时提高了用户体验。

Description

一种业务请求处理方法、装置、系统和相关服务器
技术领域
本发明涉及分布式计算技术领域,尤其涉及一种业务请求处理方法、装置、系统和相关服务器。
背景技术
在Spark整体框架系统中,Thriftserver为上层提供了简单易用的Hive SQL接口的方式查询Hive组件中的数据。在普通业务项目中,会使用Thriftserver来查询spark的HDFS(Hadoop Distributed File System,分布式文件系统)数据。而攻击溯源的业务涉及到flow(流量)数据,每天的数据量会达到百亿条级别,查询数据会非常缓慢,比如几个小时或几天,导致前端一直处于等待状态,用户体验较差,因此,就需要提供进度页面指示当前查询情况、或者如果大数据量级别的查询输入出错时能够及时取消查询。而开源引擎Thriftserver具有很大的局限,无法很好的完成攻击溯源的需求,比如不支持大查询任务进度查询,不支持取消查询等。
当前采用的进度查询方式为手动去查看yarn或者Spark的监控界面,查看对应的Hive SQL语句与执行情况。此方法需要人工协助,扩展性和易用性不佳,尤其针对一个海量数据查询的Hive SQL语句,当查询条件输错时,必须等待本次查询执行结束时才能进行修正,无法实现及时取消查询,用户体验较差。
因此,如何使得Thriftserver根据业务类型对其执行定制化流程,进而实现既能实时获取当前业务的查询进度,又能够在查询条件输错时及时取消本次查询,提高用户体验是亟待解决的问题之一。
发明内容
本发明实施例提供一种业务请求处理方法、装置、系统和相关服务器,用以根据业务类型执行定制化处理过程,进而实现既能实时获取当前业务的查询进度与结果,又能够在查询条件输错时及时取消本次查询,以及实现其他更多定制的业务功能,同时还降低了定制功能成本,增加了功能扩展的灵活性与系统功能的多样性,提高了用户体验。
本发明实施例提供一种业务请求处理方法,包括:
获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;
根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;
接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
较佳地,所述业务请求中还包含有第一标识;以及
在获取本次业务的业务请求之后,以及在根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,还包括:
利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;
为本次业务分配第二标识;
利用所述第一标识替换所述第二标识;以及
将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
优选地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
较佳地,如果所述业务请求为业务查询请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;
如果所述业务请求为业务取消请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;
如果所述业务请求为第三业务请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
本发明实施例提供另一种业务请求处理方法,包括:
接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;
根据所述业务请求,为本次业务建立若干个处理任务;并
根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;
将所述业务处理结果反馈给所述代理服务器。
较佳地,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
根据所述业务请求,为本次业务建立若干个处理任务,具体包括:
根据所述第一标识,为本次业务建立若干个处理任务;
根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
优选地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
进一步地,如果所述业务请求为业务查询请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
获取所述代理服务器的名称;并
根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述代理服务器的名称对应的身份标识;
根据所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;以及
根据所述第一标识,从确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;
根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;
确定所述业务执行进度信息为所述业务处理结果。
进一步地,根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息,具体包括:
针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;
根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
优选地,还包括:
向所述代理服务器返回业务处理详情信息。
较佳地,如果所述业务请求为业务取消请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
根据所述第一标识,终止执行针对本次业务建立的处理任务;
根据终止执行针对本次业务建立的处理任务是否成功得到相应的业务处理结果。
本发明实施例一种业务请求处理装置,包括:
获取单元,用于获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;
确定单元,用于根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;
接收单元,用于接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
具体实施时,所述业务请求中还包含有第一标识;以及所述装置,还包括解析单元,其中:
所述解析单元,用于在所述获取单元获取本次业务的业务请求之后,以及在所述确定单元根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;为本次业务分配第二标识;利用所述第一标识替换所述第二标识;
所述确定单元,具体用于将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
较佳地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
进一步地,所述确定单元,具体用于如果所述业务请求为业务查询请求,则根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;如果所述业务请求为业务取消请求,则根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;如果所述业务请求为第三业务请求,则根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
本发明实施例另一种业务请求处理装置,包括:
接收单元,用于接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;
建立单元,用于根据所述业务请求,为本次业务建立若干个处理任务;
处理单元,用于根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;
反馈单元,用于将所述业务处理结果反馈给所述代理服务器。
较佳地,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
所述建立单元,具体用于根据所述第一标识,为本次业务建立若干个处理任务;
所述处理单元,具体用于根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
优选地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
具体实施时,所述处理单元,具体包括:获取子单元、第一确定子单元、第二确定子单元、筛选子单元、第三确定子单元和第四确定子单元,其中:
所述获取子单元,用于如果所述业务请求为业务查询请求,则获取所述代理服务器的名称;
所述第一确定子单元,用于根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述获取子单元获取的所述代理服务器的名称对应的身份标识;
所述第二确定子单元,用于根据所述第一确定子单元确定的所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;
所述筛选子单元,用于根据所述第一标识,从所述第二确定子单元确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;
所述第三确定子单元,用于根据所述筛选子单元筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;
所述第四确定子单元,用于确定所述第三确定子单元确定出的所述业务执行进度信息为所述业务处理结果。
进一步地,所述第三子单元,具体包括:第一确定模块和第二确定模块,其中:
所述第一确定模块,用于针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;
所述第二确定模块,用于根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
较佳地,所述装置,还包括发送单元,其中:
所述发送单元,用于向所述代理服务器返回业务处理详情信息。
较佳地,所述处理单元,还包括:终止子单元和获得子单元,其中:
所述终止子单元,用于如果所述业务请求为业务取消请求,则根据所述第一标识,终止执行针对本次业务建立的处理任务;
所述获得子单元,用于根据所述终止子单元终止执行针对本次业务建立的处理任务是否成功,得到相应的业务处理结果。
本发明实施例提供一种代理服务器,包括上述业务请求处理装置。
本发明实施例提供一种业务处理服务器,包括上述另一种业务请求处理装置。
本发明实施例提供一种业务请求处理系统,包括安装有业务客户端的终端、代理服务器和业务处理服务器,其中,所述代理服务器中设置有上述代理服务器侧业务请求处理装置,所述业务处理服务器中设置有上述业务处理服务器侧业务请求处理装置。
本发明有益效果:
本发明实施例提供的业务请求处理方法、装置、系统和相关服务器,获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。采用本发明提供的业务请求处理方法,代理服务器可以根据业务的业务类型,为其调用相应的业务处理接口,实现了根据不同的业务执行相应的定制化处理过程,不仅降低了定制功能的成本,还增加了功能扩展的灵活性与系统功能的多样性,同时提高了用户体验。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例一提供的代理服务器侧业务请求处理方法的实施流程示意图;
图2为本发明实施例一提供的代理服务器侧业务请求处理方法中获取本次业务的业务请求之后的实施流程示意图;
图3为本发明实施例二提供的业务处理服务器侧业务请求处理方法的实施流程示意图;
图4a为本发明实施例二提供的业务请求处理方法中业务查询请求的执行过程的实施流程示意图;
图4b为本发明实施例二提供的业务请求处理方法中确定本次业务的业务执行进度信息的实施流程示意图;
图5为本发明实施例二提供的业务请求处理方法中业务取消请求的执行过程的实施流程示意图;
图6为本发明实施例三提供的代理服务器侧业务请求处理装置的结构示意图;
图7为本发明实施例四提供的业务处理服务器侧业务请求处理装置的结构示意图;
图8为本发明实施例五提供的业务请求处理系统的结构示意图;
图9为现有技术中Spark框架下业务请求处理系统的结构示意图;
图10为本发明提供的业务请求处理系统应用于Spark框架下的结构示意图。
具体实施方式
本发明实施例提供一种业务请求处理方法、装置、系统和相关服务器,用以根据业务类型执行定制化处理过程,进而实现既能实时获取当前业务的查询进度,又能够在查询条件输错时及时取消本次查询,提高用户体验。
需要说明的是,本发明实施例中涉及的客户端可以是代码与模块级别的客户端,是作为调用代理服务器接口或添加设备接口的客户端,还可以设置在代理服务器中与代理服务器中的其他模块通过接口进行交互,此外,该客户端还可以安装在终端设备中,所述终端设备可以为PC(Personal Computer,个人电脑)机和移动终端等,当客户端设置在终端设备中,终端设备通过Socket方式与代理服务器进行通信。本发明实施例以客户端安装在终端设备中,独立于代理服务器为例进行说明。当然,本发明客户端设置在代理服务器中的交互过程与独立设置在终端设备中的交互过程类似,在此不再进行描述。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明实施例涉及的业务的业务请求是客户端发送的,值得注意的是,客户端在向代理服务器发送业务请求之前,可以根据该业务的业务类型,判断本次业务是否需要由代理服务器执行定制化处理过程,如果需要,则将所述业务请求先发送给添加设备,由添加设备将所述业务请求进行处理,即:将所述业务请求中添加分隔符和第一标识信息,其中添加设备在为客户端发送的业务请求添加第一标识时,由于添加设备同时可能接收端多个客户端发送的业务请求,为了便于区分各个客户端发送的业务请求,添加设备为每一客户端发送的业务请求分配唯一的第一标识,然后将添加了分割符和第一标识的业务请求转发给代理服务器。
由此,代理服务器获取的本次业务的业务请求有可能是由添加设备转发的,也有可能是客户端直接发送的,当本次业务请求是客户端直接发送的,则代理服务器在接收到本次业务的业务请求后,直接执行常规的处理流程;而当本次业务的业务请求是由客户端经添加设备处理并转发的,则代理服务器在接收到该业务请求后,执行定制化处理过程,即执行本发明实施例一提供的业务请求处理过程,以下详细介绍之。
实施例一
如图1所示,为本发明实施例一提供的代理服务器侧业务请求处理方法的实施流程示意图,可以包括以下步骤:
S11、获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符。
具体实施时,所述业务请求是添加设备对客户端发送的业务请求处理后并发送给代理服务器的。该业务请求中携带的分隔符可以但不限于为progress或者cancel,由业务的业务类型决定。
S12、根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器。
具体的说,当分隔符为progress,表示要查询某业务的业务执行进度信息与本次业务的业务处理结果,则将所述业务请求通过查询逻辑接口发送给业务处理服务器;当分隔符为cancel时,表示取消某次业务,则将所述业务请求通过取消逻辑接口发送给业务处理服务器。
具体实施时,所述业务请求中还包含有第一标识;以及
需要说明的是,新增设备在对客户端发送的业务请求添加第一标识之后,除了将添加了第一标识的业务请求发送给代理服务器外,还会将该第一标识反馈给该客户端,以便客户端正确识别自身发送的业务请求返回的业务处理结果。
在执行步骤S11获取本次业务的业务请求之后,以及在执行步骤S23中根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,还包括图2所示的流程,可以包括以下步骤:
S21、利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息。
具体的说,所述业务请求中还包括本次业务的业务处理信息,以及添加了分隔符和第一标识的业务请求的格式为:“业务处理信息+分隔符+第一标识”,其中,所述业务处理信息可以为用Hive SQL(Structured Query Language,结构化查询语言)语言表示。
由于分隔符是为了确定本次业务需要调用的逻辑接口,而在向业务处理服务器发送本次业务的业务请求时,只需将本次业务的业务处理信息和第一标识通过分隔符确定出的逻辑接口发送给业务处理服务器即可,此外,在利用分隔符解析出本次业务的业务处理信息和第一标识之后,还可以根据实际需要为本次业务添加一些业务逻辑,如加密操作等。
S22、为本次业务分配第二标识。
具体的说,由于代理服务器执行常规的业务处理流程时,处理过程为:代理服务器在接收端业务请求时,为其分配一个标识信息,然后将本次业务请求和标识信息通过普通接口发送给业务处理服务器,因此,为了防止代理服务器分配的第二标识与第一标识不同,需要执行步骤S23。
S23、利用所述第一标识替换所述第二标识。
将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
具体实施时,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。针对不同的业务请求,执行的过程不同,以下分别介绍之:
(1)如果所述业务请求为业务查询请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;
(2)如果所述业务请求为业务取消请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器。
(3)如果所述业务请求为第三业务请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
具体的说,所述第三业务请求可以但不限于包括以下至少一项:调整多个查询请求的优先级和指定业务查询是否进行缓存等其他更多定制化请求。此外,第三逻辑接口根据第三业务的不同而不同。
S13、接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
具体实施时,如果所述业务请求为带有进度的查询任一目的IP的攻击次数请求,则接收到的业务处理结果为本次业务的目的IP被攻击的次数和/或本次业务的业务执行进度信息。如果所述业务请求为取消目的IP攻击次数的请求,则返回的业务处理结果为取消成功或取消失败的结果。
较佳地,代理服务器在将业务处理结果返回给客户端时,可以先将业务处理结果存储到代理服务器中的数据库中,然后由新增设备从数据库中直接读取该业务的业务处理结果,然后新增设备再向客户端反馈该业务的业务处理结果。基于此,用户无需等待查询过程结束,可以实时获取该业务的业务处理结果。
本发明实施例一提供的业务请求处理方法,获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端,实现了针对不同的业务执行不同的定制化处理逻辑,实现了异步实时查询,用户无需长时间等待业务的业务处理结果,提高了用户体验。
实施例二
如图3所示,为本发明实施例二提供的业务处理服务器侧业务请求处理方法的实施流程示意图,可以包括以下步骤:
S31、接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的。
具体实施时,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识。
S32、根据所述业务请求,为本次业务建立若干个处理任务。
具体执行步骤S32时,具体包括:
根据所述第一标识,为本次业务建立若干个处理任务。
S33、根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
具体执行步骤S33时,具体包括:
根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
具体实施时,针对步骤S32和S33,业务处理服务器在为本次业务建立若干个处理任务时,以5个处理任务为例进行说明,业务处理服务器将第一标识下发给这5个处理任务。再根据本次业务的业务数据,分别为这5个处理任务分配相应的子任务数,记为子任务总数量。然后利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
较佳地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。具体的说,针对不同的业务请求,获得不同的业务处理结果,以下分别介绍之:
(1)如果所述业务请求为业务查询请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括图4a所示的步骤:
需要说明的是,当所述业务请求为业务查询请求时,如果用户要查询当前业务的进度信息,则客户端通过新增设备添加该业务的第一标识和分隔符progress后,将该请求发送给代理服务器,然后代理服务器在接收到该进度查询请求时,将所述进度查询请求反馈给业务处理服务器,然后业务处理服务器按照图4a所述的方法获得本次业务的业务执行进度信息。业务处理服务器在按照图4a的中步骤S41~S46确定出本次业务的业务执行进度信息后,将业务执行进度信息返回给代理服务器中的进度模块,再由进度模块将业务执行进度信息存储到代理服务器中的数据库中,然后由新增设备从数据库中读取本次查询业务的业务执行进度信息,并反馈给客户端,在此通过引入了进度模块和数据库存储实时的业务执行进度信息与返回的业务处理结果,将原本的同步查询过程改造为异步的查询,把控性更高,且更方便,且业务处理结果在数据库中默认保存24小时,保持时间可以根据实际自行配置。具体获取执行进度信息的以下详细介绍之:
S41、获取所述代理服务器的名称。
由于业务处理服务器同一时间可能为多个应用通过建立处理任务处理多个应用的业务处理结果,为了区别各个应用,本发明实施例预先存储了各个应用的名称和应用的身份标识的对应关系,参考表1所示,从而可以根据各个应用的名称获得各个应用的身份标识,进而确定出该应用中用于执行客户端发送的业务请求的业务执行进度信息。
表1
应用 应用名称 身份标识
应用1 Name1 APP ID1
应用2 Name2 APP ID2
应用3 Name3 APP ID3
…… …… ……
S42、根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述代理服务器的名称对应的身份标识。
在步骤S41获取代理服务器的名称后,可以根据表1获得该代理服务器的身份标识,即:APP ID。
S43、根据所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务。
在执行步骤S43前,还需要判断执行该APP ID对应的代理服务器发送的业务请求的处理任务是否存在,如果是则执行步骤S43,如果否,则向该代理服务器反馈停止状态码。
由于在同一时间多个客户端可能会向代理服务器发送业务请求,因此,业务处理服务器会根据业务请求中的第一标识信息为代理服务器发送的业务请求分别建立相应的处理任务,参考表2所示:
表2
业务请求 第一标识 处理任务
业务请求1 GroupID1 Job1~Job5
业务请求2 GroupID2 Job6~Job13
业务请求3 GroupID3 Job14~Job20
…… …… ……
表1中业务请求可以理解为均由代理服务器发送的,也可以理解为一部分为代理服务器发送的,其它为其它应用发送的。本发明以表1中业务请求1~业务请求3均为代理服务器发送的为例进行说明。
根据步骤S43,业务处理服务器可以确定出针对所述代理服务器发送的、所有业务请求建立的所有处理任务,即Job1~Job20。
S44、根据所述第一标识,从确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务。
假设客户端要查询业务请求1的业务执行进度信息,客户端需要将业务请求1的业务执行进度信息查询请求通过新增设备处理后发送给代理服务器,代理服务器按照步骤S11~S13后向业务处理服务器发送本次业务执行进度信息查询请求,业务处理服务器在接收到该请求后执行步骤S41~S46过程即可获得本次业务的业务执行进度信息。
代理服务器在执行步骤S44后,确定出用于执行本次业务(业务请求1)建立的所有处理任务,即Job1~Job5。
S45、根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息。
在步骤S44中确定出业务请求1的所有处理任务后,根据各个处理任务的处理信息确定本次业务(业务请求1)的业务执行进度信息。而每一处理任务的处理信息参考表3所示:
表3
具体执行步骤S45时,可以按照图4b所示的方法确定本次业务的业务执行进度信息,包括以下步骤:
S451、针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量。
针对业务请求1,建立的处理任务Job1~Job5中每一处理任务参考表4所示:
表4
则根据表4即可确定出每一处理任务分别包含的子任务总数量和已完成子任务数量。
S452、根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
在确定执行进度信息时,确定所有处理任务的子任务总数量之和N,即确定N=N1+N2+N3+N4+N5;再确定已完成子任务数量之和n,即n=n1+n2+n3+n4+n5;则确定出的本次任务(业务请求1)的业务执行进度信息为:n/N。
较佳地,所述方法,还包括:
向所述代理服务器返回业务处理详情信息。
具体的说,业务处理服务器在向代理服务器返回本次业务的业务处理结果的同时,还会向代理服务器返回本次业务的业务处理详情信息,例如,代理服务器按照步骤S452中确定出本次业务的业务执行进度信息n/N为60%时,则除了将60%反馈给代理服务器,还会将本次业务的业务处理详情信息反馈给代理服务器,当然,由于业务执行进度信息为60%,表示代理服务器为本次业务建立的处理任务还未完成对本次业务的处理,故返回的业务处理详情信息为空字符;当业务执行进度信息为100%时,即当已完成子任务数量之和等于所述子任务总数量之和时,则将100%反馈给代理服务器,同时还将本次业务的处理详情信息反馈给代理服务器,例如,如果本次业务为查询某目的IP被攻击的次数,则业务处理服务器反馈给代理服务器的信息为:业务执行进度信息100%和该目的IP被攻击的次数。
具体的说,如果所述业务请求为目的IP的攻击次数,则返回的业务处理详情信息为该目的IP被攻击的次数和其它信息等。
S46、确定所述业务执行进度信息为所述业务处理结果。
(2)如果所述业务请求为业务取消请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括图5所示的步骤:
S51、根据所述第一标识,终止执行针对本次业务建立的处理任务。
S52、根据终止执行针对本次业务建立的处理任务是否成功得到相应的业务处理结果。
S34、将所述业务处理结果反馈给所述代理服务器。
本发明实施例二提供的业务处理服务器侧业务请求处理方法,接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;根据所述业务请求,为本次业务建立若干个处理任务;并根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;将所述业务处理结果反馈给所述代理服务器。采用本发明实施例二提供的方法,能够有效地向代理服务器反馈业务的查询进度信息,且当客户端要取消某业务的查询时,也能够快速将停止查询结果反馈给代理服务器,提高了用户体验。
实施例三
基于同一发明构思,本发明实施例中还提供了一种代理服务器侧业务请求处理装置及代理服务器,由于上述装置及代理服务器解决问题的原理与代理服务器侧业务请求处理方法相似,因此上述装置及代理服务器的实施可以参见方法的实施,重复之处不再赘述。
如图6所示,为本发明实施例三提供的代理服务器侧业务请求处理装置的结构示意图,包括获取单元61、确定单元62和接收单元63,其中:
获取单元61,用于获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;
确定单元62,用于根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;
接收单元63,用于接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
较佳地,所述业务请求中还包含有第一标识;以及
所述装置,还包括解析单元64,其中:
所述解析单元64,用于在所述获取单元61获取本次业务的业务请求之后,以及在所述确定单元62根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;为本次业务分配第二标识;利用所述第一标识替换所述第二标识;
所述确定单元62,具体用于将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
较佳地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
优选地,所述确定单元62,具体用于如果所述业务请求为业务查询请求,则根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;如果所述业务请求为业务取消请求,则根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;如果所述业务请求为第三业务请求,则根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
本发明实施例还提供了一种代理服务器,包括上述所述的业务请求处理装置。
为了描述的方便,以上业务请求处理装置和代理服务器的各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
实施例四
基于同一发明构思,本发明实施例中还提供了一种业务处理服务器侧业务请求处理装置及业务处理服务器,由于上述装置及业务处理服务器解决问题的原理与业务处理服务器侧业务请求处理方法相似,因此上述装置及业务处理服务器的实施可以参见方法的实施,重复之处不再赘述。
如图7所示,为本发明实施例四提供的业务处理服务器侧业务请求处理装置的结构示意图,包括接收单元71、建立单元72、处理单元73和反馈单元74,其中:
接收单元71,用于接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;
建立单元72,用于根据所述业务请求,为本次业务建立若干个处理任务;
处理单元73,用于根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;
反馈单元74,用于将所述业务处理结果反馈给所述代理服务器。
具体实施时,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
所述建立单元72,具体用于根据所述第一标识,为本次业务建立若干个处理任务;
所述处理单元73,具体用于根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
较佳地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
进一步地,所述处理单元73,具体包括:获取子单元、第一确定子单元、第二确定子单元、筛选子单元、第三确定子单元和第四确定子单元,其中:
所述获取子单元,用于如果所述业务请求为业务查询请求,则获取所述代理服务器的名称;
所述第一确定子单元,用于根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述获取子单元获取的所述代理服务器的名称对应的身份标识;
所述第二确定子单元,用于根据所述第一确定子单元确定的所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;
所述筛选子单元,用于根据所述第一标识,从所述第二确定子单元确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;
所述第三确定子单元,用于根据所述筛选子单元筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;
所述第四确定子单元,用于确定所述第三确定子单元确定出的所述业务执行进度信息为所述业务处理结果。
具体实施时,所述第三子单元,具体包括:第一确定模块和第二确定模块,其中:
所述第一确定模块,用于针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;
所述第二确定模块,用于根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
较佳地,所述装置,还包括发送单元75,其中:
所述发送单元75,用于向所述代理服务器返回业务处理详情信息。
进一步地,所述处理单元73,还包括:终止子单元和获得子单元,其中:
所述终止子单元,用于如果所述业务请求为业务取消请求,则根据所述第一标识,终止执行针对本次业务建立的处理任务;
所述获得子单元,用于根据所述终止子单元终止执行针对本次业务建立的处理任务是否成功,得到相应的业务处理结果。
进一步地,本发明实施例还提供了一种业务处理服务器,包括上述业务请求处理装置。
为了描述的方便,以上业务请求处理装置和业务处理服务器的各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
本申请实施例所提供的两侧业务请求处理装置、代理服务器和业务处理服务器可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要两侧业务请求处理装置、代理服务器和业务处理服务器具有上述功能,都应该在本申请的保护范围之内。
实施例五
如图8所示,为本发明实施例五提供的业务请求处理系统的结构示意图,包括安装有业务客户端的终端1、代理服务器2和业务处理服务器3,其中:
所述安装有业务客户端的终端1,用于向所述代理服务器2发送本次业务的业务请求;以及接收代理服务器2反馈的本次业务的业务处理结果。
所述代理服务器2,用于获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;接收所述业务处理服务器3发送的所述业务的业务处理结果,并将所述业务处理结果反馈给终端1中的客户端。
所述业务处理服务器3,用于接收代理服务器2发送的业务请求,其中所述业务请求为代理服务器2通过本次业务的业务类型的分隔符对应的逻辑接口发送的;根据所述业务请求,为本次业务建立若干个处理任务;并根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;将所述业务处理结果反馈给所述代理服务器2。
具体实施时,所述业务请求中还包含有第一标识;以及所述代理服务器2,具体用于在获取本次业务的业务请求之后,以及在根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,还利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;为本次业务分配第二标识;利用所述第一标识替换所述第二标识;以及
所述代理服务器2,具体用于将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器2。
具体地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
所述代理服务器2,具体用于如果所述业务请求为业务查询请求,则根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;如果所述业务请求为业务取消请求,则根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;如果所述业务请求为第三业务请求,则根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
具体实施时,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
业务处理服务器3,具体用于根据所述第一标识,为本次业务建立若干个处理任务;以及根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
较佳地,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
具体实施时,所述业务处理服务器3,具体用于如果所述业务请求为业务查询请求,则获取所述代理服务器的名称;并根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述代理服务器的名称对应的身份标识;根据所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;以及根据所述第一标识,从确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;确定所述业务执行进度信息为所述业务处理结果。
进一步地,业务处理服务器3,具体用于针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
较佳地,业务处理服务器3,还用于向所述代理服务器返回业务处理详情信息。
可选地,业务处理服务器3,具体用于如果所述业务请求为业务取消请求,则根据所述第一标识,终止执行针对本次业务建立的处理任务;根据终止执行针对本次业务建立的处理任务是否成功得到相应的业务处理结果。
应用场景:基于Spark框架的业务请求处理系统
需要说明的是,本发明提供的代理服务器即为Spark框架下的业务请求处理系统中ThriftServer(开源组件);本发明提供的业务处理服务器即为Spark框架下的业务请求处理系统中Spark服务器。
如图9所示为现有技术中Spark框架下业务请求处理系统,ThriftCLIService(ThriftServer的JDBC连接模块)用于与客户端建立JDBC(Java Datebase Connectivity,Java数据库连接)连接,以及从客户端获得SQL查询请求,并将获得的SQL传递给后端的服务对其进行处理,处理过程为:将SQL传入SparkSQLSessionManager(SparkSQL会话管理),其中,SparkSQLSessionManager是由SparkSQLCLIService(ThriftServer的Spark连接模块)构建的,SparkSQLSessionManager在接收到SQL请求后,构建SparkSQLOperationManager(SparkSQL操作管理),并将SQL请求传入构建的SparkSQLOperationManager,SparkSQLOperationManager在接收到SQL请求后,构建SparkExcuteStatementManager(ThriftServer的HiveSQL处理模块),然后将SQL请求发送给构建的SparkExcuteStatementManager,SparkExcuteStatementManager将SQL请求直接发送给Spark服务器,现有技术中并没有对客户端传入的SQL进行任何处理。
而本发明执行的定制化过程是对图9中的SparkExcuteStatementManager进行改造,通过修改SparkExcuteStatementManager类,对客户端传入的SQL进行实施例一涉及的定制化处理。通过设置分隔符,将原SQL语句进行处理后得到Hive SQL,再将得到的HiveSQL发送给Spark服务器。
为了使得改造后的定制化处理过程生效,需要将改造后的ThriftServer源码与开源组件中其他Spark源码一通进行编译,生成新的jar(Java Archive,Java归档文件)包。将新的jar包中生成的定制化类的class类文件替换现有开源组件中使用的jar包中相应的class文件,重启开源组件即可。
本发明实施例应用于Spark系统下业务请求处理方法的示意图参考图10所示,客户端(攻击溯源APP)根据业务类型将SQL请求发送给添加设备4,添加设备4根据该SQL请求为该客户端1发送的SQL请求添加分隔符和标识符得到Hive SQL请求,并向代理服务器2(ThriftServer)发送添加了分隔符和第一标识的Hive SQL请求。
代理服务器2在接收到请求后,判断该请求是否具有分隔符和第一标识,如果否,则按常规流程进行处理,在此不进行描述;如果是,则利用分隔符对Hive SQL请求解析出本次业务的业务处理信息和第一标识,其中,所述分隔符用于指示本次业务的业务类型,并根据分隔符确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器3,在此之前还可以根据分隔符对业务请求添加相应的处理逻辑,然后再通过逻辑接口发送给业务处理服务器3(Spark服务器)。
业务处理服务器3在接收到代理服务器2发送的业务请求,其中所述业务请求为代理服务器2通过本次业务的业务类型的分隔符对应的逻辑接口发送的;根据所述业务请求,为本次业务建立若干个处理任务;并根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;将所述业务处理结果反馈给所述代理服务器2。
此外,代理服务器2在向业务处理服务器3发送请求时,还可以通过CACHE TABLE关键字实现将业务处理服务器3利用建立的处理任务执行代理服务器2发送的业务请求时查询的数据信息缓存到Spark内存中,即图10所示的内存,可以记为Tachyon,待代理服务器2再次执行该业务请求时,使得业务处理服务器3利用建立的处理任务直接从Tachyon中获取数据信息,有效地提高了业务请求处理系统的稳定性。
业务处理服务器3在接收到代理服务器2发送的业务请求后,根据所述业务请求,为本次业务建立若干个处理任务;并根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;将所述业务处理结果反馈给所述代理服务器2。
客户端想要知道某业务的业务请求的执行进度信息时,客户端可以向将该业务请求发送给添加设备4,添加设备为其配置该业务进度查询的分隔符progress和第一标识,然后添加设备将配置了分隔符和第一标识后的进度查询请求发送给代理服务器2,代理服务器处理完成后,将该请求发送给业务处理服务器3,业务处理服务器3获得该业务的业务执行进度信息的过程为:获取所述代理服务器的名称;并根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述代理服务器的名称对应的身份标识;根据所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;以及根据所述第一标识,从确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;此外,在根据筛选出的、针对本次业务建立的所有处理任务,确定该业务的业务执行进度信息时,具体步骤为:针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。至此,业务处理服务器3确定了该业务的业务执行进度信息,并将其作为该业务的业务处理结果,然后将确定出的业务执行进度信息(业务处理结果)发送给代理服务器2中的进度模块21,再由进度模块21将该业务的业务处理结果(业务执行进度信息)存储到数据库22中;此外,业务处理服务器3还会按照图10所示的流程向代理服务器2返回该业务的业务处理详情信息,再由代理服务器2将该业务处理详情信息存储到数据库22中。当客户端向知道该业务的业务处理结果或业务详情信息时,则再向添加设备4发送请求,该请求中包含本次业务的第一标识,添加设备4接收到该请求后,从数据库中读取本次业务的业务处理结果和业务详情信息。为了保持数据库的缓冲容量,存储到数据库中的业务处理结果(业务执行进度信息)或业务详情信息具有一定的有效期,默认配置为24小时,客户端可以在预设期限任意时间发送业务请求,有效的获取客户端要查询业务的业务处理结果(业务执行进度信息)和业务详情信息。
需要说明的是,本申请应用场景中添加设备4作为独立设备设置在代理服务器2外部,在实际应用中,添加设备4还可以设置在代理服务器2中,与代理服务器2中的其他模块通过接口进行交互,本发明实施例对此不进行限定。
本发明实施例提供的一种业务请求处理方法、装置、系统和相关服务器,获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;业务处理服务器在接收到代理服务器发送的业务请求后,根据所述业务请求,为本次业务建立若干个处理任务;并根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;将所述业务处理结果反馈给所述代理服务器,代理服务器在接收到所述业务处理服务器发送的所述业务的业务处理结果后,并将所述业务处理结果反馈给客户端。实现了针对不同的业务执行不同的定制化处理逻辑,同时能够有效地向代理服务器反馈业务的查询进度信息,且当客户端要取消某业务的查询时,也能够快速将停止查询结果反馈给代理服务器,提高了用户体验。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (25)

1.一种业务请求处理方法,其特征在于,包括:
获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;
根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;
接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
2.如权利要求1所述的方法,其特征在于,
所述业务请求中还包含有第一标识;以及
在获取本次业务的业务请求之后,以及在根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,还包括:
利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;
为本次业务分配第二标识;
利用所述第一标识替换所述第二标识;以及
将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
3.如权利要求1或2所述的方法,其特征在于,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
4.如权利要求3所述的方法,其特征在于,如果所述业务请求为业务查询请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;
如果所述业务请求为业务取消请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;
如果所述业务请求为第三业务请求,则根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器,具体包括:
根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
5.一种业务请求处理方法,其特征在于,包括:
接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;
根据所述业务请求,为本次业务建立若干个处理任务;并
根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;
将所述业务处理结果反馈给所述代理服务器。
6.如权利要求5所述的方法,其特征在于,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
根据所述业务请求,为本次业务建立若干个处理任务,具体包括:
根据所述第一标识,为本次业务建立若干个处理任务;
根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
7.如权利要求6所述的方法,其特征在于,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
8.如权利要求7所述的方法,其特征在于,如果所述业务请求为业务查询请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
获取所述代理服务器的名称;并
根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述代理服务器的名称对应的身份标识;
根据所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;以及
根据所述第一标识,从确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;
根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;
确定所述业务执行进度信息为所述业务处理结果。
9.如权利要求8所述的方法,其特征在于,根据筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息,具体包括:
针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;
根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
10.如权利要求9所述的方法,其特征在于,还包括:
向所述代理服务器返回业务处理详情信息。
11.如权利要求7所述的方法,其特征在于,如果所述业务请求为业务取消请求,则根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果,具体包括:
根据所述第一标识,终止执行针对本次业务建立的处理任务;
根据终止执行针对本次业务建立的处理任务是否成功得到相应的业务处理结果。
12.一种业务请求处理装置,其特征在于,包括:
获取单元,用于获取本次业务的业务请求,所述业务请求中携带有用于指示本次业务的业务类型的分隔符;
确定单元,用于根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口,并将所述业务请求通过所述逻辑接口发送给业务处理服务器;
接收单元,用于接收所述业务处理服务器发送的所述业务的业务处理结果,并将所述业务处理结果反馈给客户端。
13.如权利要求12所述的装置,其特征在于,所述业务请求中还包含有第一标识;以及所述装置,还包括解析单元,其中:
所述解析单元,用于在所述获取单元获取本次业务的业务请求之后,以及在所述确定单元根据所述业务请求中携带的分隔符,确定所述分隔符对应的逻辑接口之前,利用所述分隔符,从所述业务请求中解析出所述业务的第一标识和所述业务的业务处理信息;为本次业务分配第二标识;利用所述第一标识替换所述第二标识;
所述确定单元,具体用于将所述业务请求中的业务处理信息和第一标识通过所述逻辑接口发送给业务处理服务器。
14.如权利要求12或13所述的装置,其特征在于,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
15.如权利要求14所述的装置,其特征在于,
所述确定单元,具体用于如果所述业务请求为业务查询请求,则根据所述业务查询请求中携带的分隔符,确定所述分隔符对应的查询逻辑接口,并将所述业务查询请求通过所述查询逻辑接口发送给业务处理服务器;如果所述业务请求为业务取消请求,则根据所述业务取消请求中携带的分隔符,确定所述分隔符对应的取消逻辑接口,并将所述业务取消请求通过所述取消逻辑接口发送给业务处理服务器;如果所述业务请求为第三业务请求,则根据所述第三业务请求中携带的分隔符,确定所述分隔符对应的第三逻辑接口,并将所述第三业务请求通过所述第三逻辑接口发送给业务处理服务器。
16.一种业务请求处理装置,其特征在于,包括:
接收单元,用于接收代理服务器发送的业务请求,其中所述业务请求为代理服务器通过本次业务的业务类型的分隔符对应的逻辑接口发送的;
建立单元,用于根据所述业务请求,为本次业务建立若干个处理任务;
处理单元,用于根据所述业务请求,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果;
反馈单元,用于将所述业务处理结果反馈给所述代理服务器。
17.如权利要求16所述的装置,其特征在于,所述业务请求中携带有本次业务的业务处理信息和本次业务的第一标识;以及
所述建立单元,具体用于根据所述第一标识,为本次业务建立若干个处理任务;
所述处理单元,具体用于根据所述业务处理信息和所述第一标识,利用所述处理任务对所述业务进行处理得到所述业务的业务处理结果。
18.如权利要求17所述的装置,其特征在于,所述业务请求包括业务查询请求、业务取消请求和第三业务请求。
19.如权利要求18所述的装置,其特征在于,所述处理单元,具体包括:获取子单元、第一确定子单元、第二确定子单元、筛选子单元、第三确定子单元和第四确定子单元,其中:
所述获取子单元,用于如果所述业务请求为业务查询请求,则获取所述代理服务器的名称;
所述第一确定子单元,用于根据预先监控的应用的名称与应用的身份标识的对应关系,确定所述获取子单元获取的所述代理服务器的名称对应的身份标识;
所述第二确定子单元,用于根据所述第一确定子单元确定的所述身份标识,确定针对所述代理服务器发送的、所有业务请求建立的所有处理任务;
所述筛选子单元,用于根据所述第一标识,从所述第二确定子单元确定出的针对所述代理服务器发送的、所有业务请求建立的所有处理任务中,筛选出针对本次业务建立的所有处理任务;
所述第三确定子单元,用于根据所述筛选子单元筛选出的、针对本次业务建立的所有处理任务,确定本次业务的业务执行进度信息;
所述第四确定子单元,用于确定所述第三确定子单元确定出的所述业务执行进度信息为所述业务处理结果。
20.如权利要求19所述的装置,其特征在于,所述第三子单元,具体包括:第一确定模块和第二确定模块,其中:
所述第一确定模块,用于针对本次业务建立的每一处理任务,确定该处理任务包含的子任务总数量和已完成子任务数量;
所述第二确定模块,用于根据针对本次业务建立的所有处理任务的子任务总数量之和以及已完成子任务数量之和,确定本次业务的业务执行进度信息。
21.如权利要求20所述的装置,其特征在于,还包括发送单元,其中:
所述发送单元,用于向所述代理服务器返回业务处理详情信息。
22.如权利要求18所述的装置,其特征在于,所述处理单元,还包括:终止子单元和获得子单元,其中:
所述终止子单元,用于如果所述业务请求为业务取消请求,则根据所述第一标识,终止执行针对本次业务建立的处理任务;
所述获得子单元,用于根据所述终止子单元终止执行针对本次业务建立的处理任务是否成功,得到相应的业务处理结果。
23.一种代理服务器,其特征在于,包括权利要求12~15任一权利要求所述的装置。
24.一种业务处理服务器,其特征在于,包括权利要求16~22任一权利要求所述的装置。
25.一种业务请求处理系统,其特征在于,包括安装有业务客户端的终端、代理服务器和业务处理服务器,其中,所述代理服务器中设置有权利要求12~15任一权利要求所述的装置,所述业务处理服务器中设置有权利要求16~22任一权利要求所述的装置。
CN201710112916.XA 2017-02-28 2017-02-28 一种业务请求处理方法、装置、系统和相关服务器 Active CN106850830B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710112916.XA CN106850830B (zh) 2017-02-28 2017-02-28 一种业务请求处理方法、装置、系统和相关服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710112916.XA CN106850830B (zh) 2017-02-28 2017-02-28 一种业务请求处理方法、装置、系统和相关服务器

Publications (2)

Publication Number Publication Date
CN106850830A true CN106850830A (zh) 2017-06-13
CN106850830B CN106850830B (zh) 2020-11-20

Family

ID=59137438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710112916.XA Active CN106850830B (zh) 2017-02-28 2017-02-28 一种业务请求处理方法、装置、系统和相关服务器

Country Status (1)

Country Link
CN (1) CN106850830B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021460A (zh) * 2017-12-06 2018-05-11 锐捷网络股份有限公司 基于Spark的任务处理方法及装置
CN108304455A (zh) * 2017-12-20 2018-07-20 阿里巴巴集团控股有限公司 一种处理业务请求的方法、装置及设备
CN108959952A (zh) * 2017-05-23 2018-12-07 中国移动通信集团重庆有限公司 数据平台权限控制方法、装置和设备
CN109040316A (zh) * 2018-09-19 2018-12-18 天津字节跳动科技有限公司 Http服务处理方法和装置
CN109617997A (zh) * 2019-01-02 2019-04-12 广州品唯软件有限公司 业务请求的匹配方法、装置及计算机可读存储介质
CN109816199A (zh) * 2018-12-14 2019-05-28 平安医疗健康管理股份有限公司 工作任务处理方法及装置、服务器和计算机可读存储介质
WO2019136800A1 (zh) * 2018-01-09 2019-07-18 平安科技(深圳)有限公司 业务处理方法、装置、设备及计算机可读存储介质
CN110232101A (zh) * 2019-06-10 2019-09-13 北京红山信息科技研究院有限公司 基于数据仓库的应用运行方法、装置、终端及存储介质
CN111142960A (zh) * 2018-11-02 2020-05-12 中国电信股份有限公司 接口提供方法、装置和系统
CN111988400A (zh) * 2020-08-20 2020-11-24 广州探途网络技术有限公司 接入处理方法、应用服务器及电子设备
CN113177153A (zh) * 2021-06-30 2021-07-27 天聚地合(苏州)数据股份有限公司 消息汇总方法、装置、存储介质及设备
CN114357003A (zh) * 2022-03-03 2022-04-15 深圳希施玛数据科技有限公司 一种金融财经数据处理方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259541A1 (en) * 2005-05-16 2006-11-16 Microsoft Corporation Coordination of set enumeration information between independent agents
CN103095479A (zh) * 2011-11-04 2013-05-08 华为技术有限公司 业务配置的方法及装置
CN103237293A (zh) * 2012-11-19 2013-08-07 北京新岸线移动多媒体技术有限公司 一种消息的发送、接收方法及装置
CN104038536A (zh) * 2014-05-23 2014-09-10 小米科技有限责任公司 插件通信方法和装置
CN105471928A (zh) * 2014-06-05 2016-04-06 株式会社日立制作所 物联网业务调度与处理系统和方法
CN105610714A (zh) * 2016-02-04 2016-05-25 广州海格通信集团股份有限公司 Sdn网络的控制方法和装置以及sdn控制器
CN106302600A (zh) * 2015-06-04 2017-01-04 中国移动通信集团广东有限公司 一种定制化需求的方法及装置
CN106330769A (zh) * 2016-11-15 2017-01-11 腾讯科技(深圳)有限公司 一种业务处理方法及服务器

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259541A1 (en) * 2005-05-16 2006-11-16 Microsoft Corporation Coordination of set enumeration information between independent agents
CN103095479A (zh) * 2011-11-04 2013-05-08 华为技术有限公司 业务配置的方法及装置
CN103237293A (zh) * 2012-11-19 2013-08-07 北京新岸线移动多媒体技术有限公司 一种消息的发送、接收方法及装置
CN104038536A (zh) * 2014-05-23 2014-09-10 小米科技有限责任公司 插件通信方法和装置
CN105471928A (zh) * 2014-06-05 2016-04-06 株式会社日立制作所 物联网业务调度与处理系统和方法
CN106302600A (zh) * 2015-06-04 2017-01-04 中国移动通信集团广东有限公司 一种定制化需求的方法及装置
CN105610714A (zh) * 2016-02-04 2016-05-25 广州海格通信集团股份有限公司 Sdn网络的控制方法和装置以及sdn控制器
CN106330769A (zh) * 2016-11-15 2017-01-11 腾讯科技(深圳)有限公司 一种业务处理方法及服务器

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959952A (zh) * 2017-05-23 2018-12-07 中国移动通信集团重庆有限公司 数据平台权限控制方法、装置和设备
CN108959952B (zh) * 2017-05-23 2020-10-30 中国移动通信集团重庆有限公司 数据平台权限控制方法、装置和设备
CN108021460A (zh) * 2017-12-06 2018-05-11 锐捷网络股份有限公司 基于Spark的任务处理方法及装置
CN108304455A (zh) * 2017-12-20 2018-07-20 阿里巴巴集团控股有限公司 一种处理业务请求的方法、装置及设备
WO2019136800A1 (zh) * 2018-01-09 2019-07-18 平安科技(深圳)有限公司 业务处理方法、装置、设备及计算机可读存储介质
CN109040316A (zh) * 2018-09-19 2018-12-18 天津字节跳动科技有限公司 Http服务处理方法和装置
CN111142960B (zh) * 2018-11-02 2023-11-14 中国电信股份有限公司 接口提供方法、装置和系统
CN111142960A (zh) * 2018-11-02 2020-05-12 中国电信股份有限公司 接口提供方法、装置和系统
CN109816199B (zh) * 2018-12-14 2023-09-22 深圳平安医疗健康科技服务有限公司 工作任务处理方法及装置、服务器和计算机可读存储介质
CN109816199A (zh) * 2018-12-14 2019-05-28 平安医疗健康管理股份有限公司 工作任务处理方法及装置、服务器和计算机可读存储介质
CN109617997A (zh) * 2019-01-02 2019-04-12 广州品唯软件有限公司 业务请求的匹配方法、装置及计算机可读存储介质
CN109617997B (zh) * 2019-01-02 2022-01-11 广州品唯软件有限公司 业务请求的匹配方法、装置及计算机可读存储介质
CN110232101A (zh) * 2019-06-10 2019-09-13 北京红山信息科技研究院有限公司 基于数据仓库的应用运行方法、装置、终端及存储介质
CN111988400B (zh) * 2020-08-20 2023-08-22 广州探途网络技术有限公司 接入处理方法、应用服务器及电子设备
CN111988400A (zh) * 2020-08-20 2020-11-24 广州探途网络技术有限公司 接入处理方法、应用服务器及电子设备
CN113177153A (zh) * 2021-06-30 2021-07-27 天聚地合(苏州)数据股份有限公司 消息汇总方法、装置、存储介质及设备
CN114357003A (zh) * 2022-03-03 2022-04-15 深圳希施玛数据科技有限公司 一种金融财经数据处理方法及系统

Also Published As

Publication number Publication date
CN106850830B (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
CN106850830A (zh) 一种业务请求处理方法、装置、系统和相关服务器
DE69812899T2 (de) Webagent zur anforderung von mehreren prozessen
CN103403707B (zh) 用于数据库代理请求交换的系统和方法
RU2648966C2 (ru) Устройство и способ для обработки множества открытых api
US8635617B2 (en) Tracking requests that flow between subsystems using transaction identifiers for generating log data
CN108462598B (zh) 一种日志生成方法、日志分析方法及装置
CN110781083B (zh) 一种h5客户端代码设置多环境测试方法和系统
US20080243848A1 (en) User specific logs in multi-user applications
US8489631B2 (en) Distributing a query
CN103581273B (zh) 一种分布式系统执行业务的方法、装置及系统
CN109450976A (zh) 一种业务系统的访问的方法及装置
EP3583766B1 (en) Service discovery using attribute matching
CN106649117A (zh) 软件压力测试用数据提供方法及系统
CN104618388A (zh) 快速注册登录方法及对应的重置服务器、信息服务器
US10193773B2 (en) Methods, systems, and computer readable media for distributed network packet statistics collection in a test environment
US20210144440A1 (en) Streaming event content based filtering
CN105872082A (zh) 基于容器集群负载均衡算法的细粒度资源响应系统
CN108520003A (zh) 一种存储过程调度系统和方法
CN109951355B (zh) 一种用于分布式系统白盒关联路径追踪的方法
CN107301125A (zh) 一种寻找根源错误的方法、装置及电子设备
CN114610689B (zh) 一种分布式环境中请求日志的记录和分析方法
CN107483565A (zh) 一种服务后台识别方法、代理服务器及计算机存储介质
CN105871972A (zh) 一种视频资源的分布式缓存方法、装置及系统
CN106470132B (zh) 水平权限测试方法及装置
CN110990280B (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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee after: NSFOCUS Technologies Group Co.,Ltd.

Patentee after: NSFOCUS TECHNOLOGIES Inc.

Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd.

Patentee before: NSFOCUS TECHNOLOGIES Inc.