CN113691511B - 服务请求处理方法及其装置、设备与介质 - Google Patents

服务请求处理方法及其装置、设备与介质 Download PDF

Info

Publication number
CN113691511B
CN113691511B CN202110929135.6A CN202110929135A CN113691511B CN 113691511 B CN113691511 B CN 113691511B CN 202110929135 A CN202110929135 A CN 202110929135A CN 113691511 B CN113691511 B CN 113691511B
Authority
CN
China
Prior art keywords
interceptor
information
service request
service
characteristic information
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
CN202110929135.6A
Other languages
English (en)
Other versions
CN113691511A (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.)
Guangzhou Huaduo Network Technology Co Ltd
Original Assignee
Guangzhou Huaduo Network 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 Guangzhou Huaduo Network Technology Co Ltd filed Critical Guangzhou Huaduo Network Technology Co Ltd
Priority to CN202110929135.6A priority Critical patent/CN113691511B/zh
Publication of CN113691511A publication Critical patent/CN113691511A/zh
Application granted granted Critical
Publication of CN113691511B publication Critical patent/CN113691511B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/306Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information intercepting packet switched data communications, e.g. Web, Internet or IMS communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开一种服务请求处理方法及其装置、设备与介质,所述方法包括:从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息;获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应。本申请的应用可使在线服务具有多个相互响应的拦截器进行拦截校验处理,且通过配置服务器提供拦截器更新接口,供管理端自定义更新各拦截器。

Description

服务请求处理方法及其装置、设备与介质
技术领域
本申请涉及网络拦截器技术领域,尤其涉及一种服务请求处理方法,此外还涉及该方法相应的装置、设备以及非易失性存储介质。
背景技术
HTTP协议和WEB服务,在互联网技术领域占据着主导地位,在WEB服务中,HTTP协议网络拦截器随处可见,通过HTTP拦截器可对HTTP请求参数,响应结果进行重新封装,做到安全校验,开关,HTTP流量灰度等各种功能,对HTTP请求响应进行过滤处理,异常结果处理等等。可见HTTP拦截器在WEB服务中是非常重要的中间处理程序。
在当前互联网技术领域中,市场上存在着各种各样的HTTP拦截器,有这相对完善的技术方案,但是对于每种传统的HTTP拦截器都存在共同的缺点有:
首先,拦截器的功能单一,不同的HTTP拦截器都只关注自身的拦截器内容即校验逻辑,各拦截器之间无法相互响应关联,使WEB服务中的各HTTP拦截器仅作为一个独立的执行,各拦截器无法构造成一个整体的拦截校验处理业务,如果服务需要实现多种功能的HTTP拦截器,那么需要用户对不同的HTTP拦截器行为进行自定义,无法将各拦截器相互结合形成一个完整的逻辑校验业务。
其次,WEB服务中各HTTP拦截器的优先级不可变,各HTTP拦截器的优先级仅通过WEB服务上的硬代码进行设置实现,不能做到动态调整每个HTTP拦截器的优先级,使各HTTP拦截器之间的执行顺序在预先设置后即无法改变,当开发人员需对HTTP拦截器的执行顺序进行修改时,仅能通过修改代码进行修改,这任意影响WEB服务自身的代码逻辑,使WEB服务的部分功能失效。
鉴于各种现有技术均无法满足上述的各种问题,本申请人出于满足该些需求的考虑做出相应的探索。
发明内容
本申请的目的在于满足现有技术的需求或克服现有技术的至少部分不足而提供一种服务请求处理方法及其相应的装置、电子设备、非易失性存储介质。
为实现本申请的目的,采用如下技术方案:
适应本申请的目的之一而提出的一种服务请求处理方法,包括如下步骤:
从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息;
获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;
顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应。
进一步的实施例中,获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表的步骤,包括:
解析所述拦截器配置信息,获取该拦截配置信息包括的一个或多个拦截器的特征信息及其优先级信息;
根据该些拦截器的所述特征信息,获取该些特征信息所指向拦截器的实例;
将该些拦截器的实例配置至在线服务中,并将该些实例所属的特征信息储存至拦截器列表中,且根据该些特征信息各自对应的所述优先级信息,排序该拦截器列表中的各个所述实例,以完成所述拦截器配置信息的实例配置。
进一步的实施例中,顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应的步骤,包括:
依照接收各个所述服务请求的访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理;
根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至排序靠前的特征信息所指向的拦截器的的实例中,以触发该实例对所述服务请求进行拦截校验处理;
当所述服务请求通过该实例的校验后,将该服务请求传递至所述拦截器列表的下一特征信息所指向的实例中进行校验,以此类推,完成所有服务请求的拦截校验处理,以生成各服务请求的处理结果;
将处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中。
较佳的实施例中,所述特征信息所指向的拦截器的实例包括白名单拦截器实例,所述白名单拦截器实例处理服务请求所执行的具体步骤如下:
解析所述服务请求,确定该服务请求相对应的请求端特征信息;
查询白名单列表中是否存在该请求端特征信息,所述白名单列表中储存着多个不同请求端相对应的所述请求端特征信息;
当所述白名单列表中存在该请求端特征信息时,所述服务请求通过拦截校验。
较佳的实施例中,所述特征信息所指向的拦截器的实例包括总开关拦截器实例,所述总开关拦截器实例处理服务请求所执行的具体步骤如下:
接收所述服务请求,解析开关配置信息,确定该开关配置信息所配置的开关状态,所述开关配置信息预先配置至总开关拦截器中;
当所述开关状态表征为开启时,开放所述服务请求,将该服务请求递交至所述拦截器列表中下一特征信息所指向的拦截器的实例中,若表征为关闭,则停止递交该服务请求。
进一步的实施例中,所述特征信息所指向的拦截器的实例包括灰度拦截器实例,所述灰度拦截器实例处理服务请求所执行的具体步骤如下:
解析所述服务请求,确定该服务请求相对应的灰度信息;
根据预先配置的灰度策略信息,判断所述灰度信息是否满足该灰度策略信息中包括的灰度字段;
当该灰度信息满足所述灰度策略信息中一个或多个所述灰度字段时,该灰度信息所对应的服务请求通过拦截校验。
较佳的实施例中,所述的服务请求处理方法包括如下平行步骤:
接收由管理端推送的拦截器更新信息,产生该拦截器更新信息相对应的更新操作事件;
当所述更新操作事件表征为新增拦截器操作时,获取该事件所包含由管理端所定义的一个或多个新拦截器的特征信息及其优先级信息,将该些特征信息所指向的新拦截器的实例配置到在线服务中,并将该些特征信息添加至所述拦截器列表中,且依照所述拦截器列表中各特征信息所对应的优先级信息,更新该些特征信息在所述拦截器列表中的排序;
当所述更新操作事件表征为优先级调整操作时,响应该事件中作用于所述拦截器列表中各特征信息的优先级调整指令,更新该些特征信息在所述拦截器列表中的排序,以对应调整各拦截器的实例的服务请求拦截顺序。
当所述更新操作事件表征为拦截器调整操作时,响应该事件中作用于所述拦截器列表中任一特征信息的逻辑调整指令,更新该特征信息所指向拦截器的实例的校验逻辑。
适应本申请的目的而提出的一种服务请求处理装置,其包括:
拦截器配置获取模块,用于从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息;
拦截器实例配置模块,用于获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;
服务请求处理模块,用于顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应。
进一步的实施例中,所述拦截器实例配置模块包括:
配置信息解析子模块,用于解析所述拦截器配置信息,获取该拦截配置信息包括的一个或多个拦截器的特征信息及其优先级信息;
实例获取子模块,用于根据该些拦截器的所述特征信息,获取该些特征信息所指向拦截器的实例;
实例配置子模块,用于将该些拦截器的实例配置至在线服务中,并将该些实例所属的特征信息储存至拦截器列表中,且根据该些特征信息各自对应的所述优先级信息,排序该拦截器列表中的各个所述实例,以完成所述拦截器配置信息的实例配置。
进一步的实施例中,所述服务请求处理模块包括
请求传递子模块,用于依照接收各个所述服务请求的访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理;
实例触发子模块,用于根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至排序靠前的特征信息所指向的拦截器的的实例中,以触发该实例对所述服务请求进行拦截校验处理;
处理结果生成子模块,用于当所述服务请求通过该实例的校验后,将该服务请求传递至所述拦截器列表的下一特征信息所指向的实例中进行校验,以此类推,完成所有服务请求的拦截校验处理,以生成各服务请求的处理结果;
请求交付子模块,用于将处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中。
适应本申请的目的而提出的一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行所述服务请求处理方法的步骤。
适应本申请的目的而提出的一种非易失性存储介质,其存储有依据所述服务请求处理方法所实现的计算机程序,所述计算机程序被计算机调用运行时,执行其相应的方法所包括的步骤。
相对于现有技术,本申请的优势如下:
本申请通过配置服务器向在线服务下发拦截器配置信息,使在线服务根据拦截器配置信息进行拦截器的配置,以结合管理端通过配置服务器定义的拦截器构造多功能的拦截校验业务,且构建用于有序地调用各拦截器进行校验处理的拦截器列表,以便在线服务构建该拦截器列表,将其拦截的服务请求逐级递交至其配置的各拦截器中进行校验处理。
首先,本申请通过设置配置服务器,管理管理端(开发人员)预先设置的各拦截器,便于管理人员对各拦截器进行同一管理,且管理端通过配置服务器可对各拦截器动态结合配置,将其封装为拦截器配置信息下发至在线服务中进行配置,使在线服务配置各拦截器构造多功能的拦截校验引擎,使在线服务中配置的各拦截器相互关联响应,提升在线服务的拦截校验业务的处理能力。
其次,本申请的配置服务器提供用于更新拦截器的接口于管理端(开发人员),使管理端在继承在线服务中各拦截器的情况下,进行相应的拦截器更新操作,其不仅提供管理端修改各拦截器的执行顺序的更新服务,还可提供新增拦截器、修改现有拦截器的校验逻辑等更新服务,使在线服务中的拦截校验业务具有高度自定义功能。
另外,本申请通过配置服务器,向多个在线服务下发其所需的拦截器进行逻辑校验业务的构建,使开发人员可使用配置服务器中预先定义的拦截器配置多个在线服务的逻辑校验业务,不需要重新为不同的在线服务定义新的拦截器,以节省开发人员的开发时间。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的服务请求处理方法的典型实施例的流程示意图;
图3为本申请中各端之间的数据交互逻辑的流程示意图;
图4为图2中步骤S12的实施例的具体步骤所形成的流程示意图;
图5为图2中步骤S13的实施例的具体步骤所形成的流程示意图;
图6为本申请中白名单拦截器的实施例的具体步骤所形成的流程示意图;
图7为本申请中总开关拦截器的实施例的具体步骤所形成的流程示意图;
图8为本申请中灰度拦截器的实施例的具体步骤所形成的流程示意图;
图9为本申请的服务请求处理方法的一种实施例的流程示意图,其相对添加了平行步骤;
图10为本申请的服务请求处理装置的典型实施例的原理框图;
图11为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个业务服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
所述的应用程序,是指运行于服务器或终端设备上的应用程序,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
请参阅图2,本申请的一种服务请求处理方法,在其典型实施例中,其包括如下步骤:
步骤S11,从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息:
拦截服务器从所述配置服务器中获取所述拦截器配置信息,该拦截器配置信息中包含在线服务需调用的一个或多个所述拦截器的特征信息及各自的优先级信息。
拦截服务器通过所述特征信息从配置服务器中获取该特征信息所指向的拦截器的实例进行配置,并根据各个所述特征信息所对应的所述优先级信息,对其所配置的各拦截器的实例进行排序,以便其拦截由外部推送的服务请求后,按照各拦截器的实例的排序,按序将服务请求提交至各拦截器的实例中进行校验处理;拦截服务器根据所述特征信息进行拦截器的实例的配置后,根据该些特征信息各自对应的所述优先级信息,构造拦截器列表,该拦截器列表中储存着该些特征信息,且按照各特征信息所对应的优先级信息排序其在列表中的储存位置,以便拦截服务器通过该拦截器列表,将服务请求按序地提交至各拦截器的实例中进行校验处理。
所述拦截服务器用于执行所述在线服务的拦截请求校验处理,其通过从所述配置服务器中获取所述拦截器配置信息,以根据该拦截器配置信息中包含的拦截器的特征信息及器优先级信息进行本地拦截器配置,以便拦截外部触发的服务请求进行拦截请求校验处理。
所述的配置服务器用于储存管理端预先定义的拦截器的实例以及各拦截器的所述特征信息及其优先级信息,以便拦截服务器通过与该配置服务器建立数据通信链路,配置服务器将各所述特征信息及各自对应的优先级信息封装为所述拦截器配置信息,使拦截服务器通过所述数据通信链路从所述配置服务器中获取所述拦截器配置信息,以根据该拦截器配置信息中的特征信息从配置服务器中获取相对应的拦截器的实例进行配置所述在线服务中,并根据各特征信息相对应的所述优先级信息,调节完成配置的各拦截器的实例的拦截顺序,以形成包含该些特征信息的拦截器列表,便于将后续拦截所得的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例进行有序地拦截校验处理,当然,所述配置服务器封装的所述拦截器配置信息可发放至多个拦截服务器中,使多个拦截服务器根据该拦截配置信息进行拦截器的实例的配置以提供其所对应的在线服务所需的逻辑校验服务,以解决多个在线服务下需重复实现相同拦截器功能的问题。
相应的,所述配置服务器可通过开放拦截器更新接口供管理端更新在线服务中配置的各拦截器,配置服务器通过接收管理端推送的拦截器更新信息,并将其推送至逻辑服务器中,触发逻辑服务器根据该拦截器更新信息,执行相应的拦截器更新操作,使管理端可通过配置服务器自定义执行服务中当前的逻辑校验业务,具体的实施方式请参考后续步骤S14至17的叙述,本步骤恕不赘述。
一种实施例中,所述配置服务器一般是基于Apollo(分布式配置中心)进行构造的,使所述配置服务器能够集中化管理接收其下发的拦截器配置信息进行拦截器配置的在线服务中的各拦截器,使其可为管理端(开发人员)提供所述拦截器更新接口,供管理端通过该接口触发配置服务器中继转发拦截器更新信息至相应的在线服务中,以修改更新该在线服务中的拦截校验业务。
所述在线服务一般是指通过拦截器拦截旧服务器中的服务请求进行校验处理,将通过校验的服务请求传递至新服务器中进行处理的服务,所述拦截服务器根据其从配置服务器中获取的所述拦截器配置信息进行拦截器的配置,以为在线服务拦截服务请求进行拦截校验处理,即在线服务需要拦截服务器所配置的拦截器的实例进行拦截校验处理的服务,使新服务器接收进行处理的服务请求为通过拦截器的校验处理的服务请求,即所述拦截器的校验逻辑一般为根据新服务器的格式或身份需求所定义设置,拦截服务器在所述在线服务的拦截校验服务中起着至关重要的作用,当然,所述旧服务器也可作为所述拦截服务器,其接收外部所推送的服务请求后,并调用其自身配置的各个拦截器进行校验处理,以将通过各个拦截器校验的服务请求推送至新服务器中进行处理。
请参考图3,图3为本申请中各端之间的数据交互逻辑的示意图,如图所示,所述在线服务一般由旧服务、拦截服务器、配置服务器以及新服务器构成,其中,拦截服务器通过从配置服务器中获取拦截器配置信息进行拦截器的配置,以拦截旧服务器中接收至请求端推送的服务请求进行拦截校验处理,并将通过各拦截器的校验处理的服务请求推送至新服务器中,以触发新服务器处理通过拦截器校验的服务请求,通过将拦截器的配置工作及逻辑校验工作交由所述拦截服务器执行,使其通过配置多个在线服务的拦截器,为多个所述在线服务提供拦截服务请求并对请求进行校验处理服务;所述配置服务器与拦截服务器也可为同一服务器,以封装所述在线服务的拦截器配置信息储存及拦截器配置,以提升拦截器的配置效率,相应的,所述旧服务器或新服务器也可代替所述拦截服务器,从所述配置服务器中获取所述拦截配置信息进行拦截器配置,并通过该些完成配置的拦截器拦截请求端推送的服务请求进行校验处理,本领域技术人员可根据实际应用场景进行拦截器的部署及设置各端之间的数据交互逻辑,恕不赘述。
步骤S12,获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表:
拦截服务器根据所述拦截器配置信息中包含的各个所述特征信息,获取该些特征信息所指向的拦截器的实例,并将该些拦截器的实例配置到所述在线服务中,且根据该些特征信息及各自对应的所述优先级信息,构造储存该些特征信息且根据其各自相对应的所述优先级信息进行排序的所述拦截器列表。
拦截服务器将其根据所述特征信息所获取的各个所述拦截器的实例配置至所述在线服务中,并构建所述拦截器列表,以便该在线服务拦截外部推送的服务请求时,拦截服务器按照所述拦截器列表中各拦截器的实例的排序,将服务请求按序地递交至相应的拦截器的实例中进行检验处理。
所述的拦截器的实例是指用于执行拦截器中拦截校验逻辑的实例,拦截服务器根据所述特征信息,从配置服务器中获取该特征信息所指向的拦截器的实例,以将该拦截器的实例配置至所述在线服务中,且将该特征信息根据其优先级信息储存至所述拦截器列表中相应的储存位置中,以便后续拦截外部推送的服务请求需调用该拦截器进行校验处理时,根据所述拦截器列表中所述特征信息,确定该特征信息所指向的拦截器的实例,将该服务请求推送至该拦截器的实例中进行校验处理。
拦截服务器构造的所述拦截器列表可接收管理端推送的拦截器更新信息,产生该拦截器更新信息相对应的更新操作事件,以响应该些操作事件,将所述拦截器列表更新为管理端所定义的拦截器更新信息中表征的新拦截器列表,提供所述拦截器列表的自定义服务至管理端,有利于管理端根据当前业务场景的拦截校验需求,修改在线服务中所配置的各拦截器的校验逻辑及各拦截器的校验顺序,或向在线服务中添加新的拦截器进行配置,使在线服务各拦截器的检验逻辑及检验顺序符合当前业务场景所需的要求,使管理端不需要修改各拦截器的计算机程序代码即可自定义在线服务中各拦截器。
请参考图4,关于拦截服务器根据所述拦截器配置信息进行拦截器的实例配置及构造所述拦截器列表的具体实施方式,其具体实施步骤如下:
步骤S121,解析所述拦截器配置信息,获取该拦截配置信息包括的一个或多个拦截器的特征信息及其优先级信息:
拦截服务解析所述拦截器配置信息,获取该拦截配置信息中包括的一个或多个拦截器的所述特征信息及该些特征信息相对应的所述优先级信息。
所述拦截器配置信息由拦截服务器通过与其建立数据通信链路的配置服务中获取所得,该拦截配置信息中包含的各拦截器的特征信息由配置服务器根据其所储存的拦截器的实例所创建,以便拦截服务器通过所述特征信息,从配置服务器中获取该特征信息所指向的拦截器的实例进行配置,且各特征信息(拦截器)的优先级信息由管理人员预先在配置服务中设置,管理人员根据实际拦截校验场景的需求,定义各特征信息所指向的拦截器的优先级信息,以控制在线服务中各拦截器执行针对服务请求校验处理的执行顺序。
步骤S122,根据该些拦截器的所述特征信息,获取该些特征信息所指向拦截器的实例:
拦截服务器根据从所述拦截器配置信息中获取的各拦截器的特征信息,从所述配置服务器中获取该些特征信息所执行的拦截器的实例,以便后续将该些拦截器的实例配置至所述在线服务中,使在线服务具有该些拦截器的实例所具有的拦截校验处理功能。
步骤S123,将该些拦截器的实例配置至在线服务中,并将该些实例所属的特征信息储存至拦截器列表中,且根据该些特征信息各自对应的所述优先级信息,排序该拦截器列表中的各个所述实例,以完成所述拦截器配置信息的实例配置:
拦截服务器将根据各所述特征信息所获取的拦截器的实例配置至所述在线服务中,并将该些特征信息储存至所述拦截器列表中,且根据该些特征信息及各自对应的优先级信息,构造储存该些特征信息且按照各特征信息的所述优先级信息进行排序的所述拦截器列表,以完成以所述拦截器配置信息配置进行的所述线服务中拦截器的实例的配置。
步骤S13,顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应:
拦截服务器拦截外部触发的服务请求,并按照所述拦截器列表中各特征信息的排序,将该服务请求逐级递交至所述拦截器列表中各特征信息所指向的拦截器的实例中,以根据该些拦截器的实例的校验结果构造该服务请求的所述处理结果,确定该服务请求是否交付所述在线服务响应。
拦截服务器实时监控旧服务器,当旧服务器接收由请求端推送的服务请求后,将拦截该服务请求,并按照所述拦截器列表中各特征信息的排序,将该服务请求逐级递交至所述拦截器列表中各特征信息所指向的拦截器的实例中,获取该服务请求的处理结果,确定是否将该服务请求推送至新服务器中进行处理,完成该服务请求在所述在线服务中的拦截校验处理。
所述的服务请求由请求端推送以进行相应的业务操作,例如,当请求端为电商平台的商家用户时,其通过推送用于获取店铺中各商品信息的服务请求至旧服务器中,因电商平台对商家获取各商品信息的服务进行升级,在新服务器中部署新的服务,因此拦截该服务请求,并对该服务请求通过拦截器进行拦截校验处理,校验该服务请求是否满足新服务的校验请求,在通过拦截器的校验后,将该服务请求推送至新服务器中以对其执行新的获取各商品信息的服务。
关于所述服务请求的处理结果的生成,拦截服务器拦截外部推送的所述服务请求后,按照所述拦截器列表中各特征信息的排序,该服务请求逐级推送至该拦截器列表中各特征信息所执行的拦截器的实例中进行校验处理,在所述拦截器列表中靠前的特征信息所指向的拦截器的实例将优先对所述服务请求进行校验处理,若该服务请求通过所述拦截器的校验后,将该服务请求推送至所述拦截器列表中下一特征信息所指向的拦截器的实例中进行校验处理,以此类推,当所述服务请求无法通过所述拦截器列表中任一特征信息所指向的拦截器的实例的校验时,将生成表征该服务请求无法通过该拦截器的实例的校验处理的所述处理结果,若所述服务请求通过所述拦截器列表中所有特征信息所指向的拦截器的实例的校验时,将生成表征该服务请求通过所有拦截器的校验处理的处理结果。
拦截服务器一般仅将处理结果表征为通过所述拦截器列表中所有特征信息所指向的拦截器的实例的校验的服务请求交付所述在线服务响应,以触发新服务器中对该服务请求指向新服务,相应的,拦截服务器不会将一般将处理结果表征为无法通过所述拦截器列表中任一特征信息所指向的拦截器的实例的校验的服务请求交付至所述指向服务进行响应,即无法通过所有拦截器的实例的校验的服务请求无法使用新服务器中部署的新服务,仅能使用旧服务器中部署的旧服务进行处理,或该服务请求无法进行处理,将发送表征请求无法通过校验的通知信息至所述服务请求所属的请求端中,以通知请求端其所推送的服务请求无法进行响应。
请参考图5,关于拦截服务器将拦截所得的服务请求逐级递交至所述拦截器列表中各特征信息所指向的拦截器的实例进行校验处理的实施方式,其具体实施步骤如下:
步骤S131,依照接收各个所述服务请求的访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理:
拦截服务器依照其接收各个所述服务请求的访问时间,将访问时间较早的访问请求传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理,以此类推,依次将该些服务请求传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理。
所述服务请求的访问时间是指请求端推送服务请求的时间,拦截服务器依照各服务请求的所述访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理,以维护其处理各服务请求的秩序。
步骤S132,根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至排序靠前的特征信息所指向的拦截器的实例中,以触发该实例对所述服务请求进行拦截校验处理:
拦截服务器根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至该拦截器列表中排序靠前的特征信息所指向的拦截器的实例中,以触发该实例对所述服务请求进行拦截校验处理。
拦截服务器根据所述拦截器列表中各个所述特征信息的排序,有序地调用该些特征信息所指向的拦截器的实例对所述服务请求进行拦截校验处理,以使该服务请求逐级地在该些拦截器的实例中进行校验处理,通过所述拦截器列表,使拦截服务器在符合各拦截器的顺序处理逻辑的情况下,有序地递交服务请求至相应的拦截器的实例中进行拦截校验处理。
步骤S133,当所述服务请求通过该实例的校验后,将该服务请求传递至所述拦截器列表的下一特征信息所指向的实例中进行校验,以此类推,完成所有服务请求的拦截校验处理,以生成各服务请求的处理结果:
拦截服务器监控当前拦截器的实例处理所述服务请求的校验结果,当校验结果表征该服务请求通过校验后,将该服务请求递交至所述拦截器列表中该实例相对应的特征信息的下一特征信息所指向的实例中进行校验,以此类推,在该服务请求满足所述实例的校验的情况下,将该服务请求递交至下一特征信息所指向的拦截器的实例进行处理,直至该服务请求完成所述拦截器列表中所有特征信息所指向的拦截器的实例的校验处理,生成通过所有实例的校验的所述处理结果若其不满足任一实例的校验,则停止该服务请求的递交,为其生成不满足该实例的校验的处理结果。
拦截服务器按照上述的递交逻辑,有序地完成其接收到的所有服务请求的拦截校验处理,根据该些服务请求各自的拦截校验结果,生成相对应的所述处理结果。
步骤S134,将处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中:
拦截服务器将所述处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中,以触发在线服务将该服务请求提交至新服务中进行处理。
请参考图6,所述拦截器列表中存在特征信息所指向的拦截器为白名单拦截器的实例,关于该白名单拦截器的实例处理服务请求的实施方式,其具体实施步骤如下:
步骤S131’,解析所述服务请求,确定该服务请求相对应的请求端特征信息:
白名单拦截器获取所述服务请求后,确定该服务请求相对应的请求端特征信息,所述请求端特征信息是指推送该服务请求的请求端的特征信息,该请求端特征信息中一般包括请求端的UID或请求端的IP地址等表征请求端的身份的特征信息。
步骤S132’,查询白名单列表中是否存在该请求端特征信息,所述白名单列表中储存着多个不同请求端相对应的所述请求端特征信息:
白名单拦截器确定所述请求端特征信息后,将查询所述白马列表中是否存在该请求端特征信息,所述白名单列表中储存着多个不同请求端相对应的所述请求端特征信息。
所述白名单列表中储存的多个不同所述请求端特征信息一般为预先储存的信息,以保证交付至在线服务为符合身份的服务请求,确保在线服务处理的服务请求为预先指定的用户。
所述白名单列表一般部署至配置所述白名单拦截器的拦截服务器中,当然,该白名单列表也可储存至其他与拦截服务器建立数据通信链路的服务器中,便于管理端通过该服务器管理所述白名单列表中储存的请求端特征信息。
步骤S133’,当所述白名单列表中存在该请求端特征信息时,所述服务请求通过拦截校验:
当白名单拦截器查询所述白名单列表中存在所述请求端特征信息时,将判断该请求端特征信息对应的服务请求通过其拦截校验,触发拦截服务器将该服务请求递交至所述拦截器列表中该白名单拦截器的下一拦截器的实例中进行拦截校验处理,若不存在,则判断将判断该请求端特征信息对应的服务请求不通过其拦截校验,触发拦截服务器将停止该服务请求的递交。
请参考图7,所述拦截器列表中存在特征信息所指向的拦截器为总开关拦截器的实例,关于该总开关拦截器的实例处理服务请求的实施方式,其具体实施步骤如下:
步骤S131”,接收所述服务请求,解析开关配置信息,确定该开关配置信息所配置的开关状态,所述开关配置信息预先配置至总开关拦截器中:
所述总拦截接收由拦截服务器递交的所述服务请求,触发其解析开关配置信息,确定该开关配置信息中所配置的开关状态,所述开关配置信息为预先配置至所述总开发拦截器中。
所述总开关拦截器相对应的特征信息一般位于所述拦截器列表中的第一储存位置,以控制拦截服务器是否执行服务请求的拦截器递交,当管理端需停止在线服务中新服务的执行时,可通过将所述总开关拦截器的所述开关配置信息的开关状态设置为关闭状态,以控制拦截服务器停止执行服务请求的拦截器递交,防止拦截服务器将服务请求提交至执行服务的新服务中。
步骤S132”,当所述开关状态表征为开启时,开放所述服务请求,将该服务请求递交至所述拦截器列表中下一特征信息所指向的拦截器的实例中,若表征为关闭,则停止递交该服务请求:
当总开关拦截器确定所述开关配置信息中的开关状态表征为开启状态时,将开放所述服务请求,判断该服务请求通过其拦截校验处理,以将该服务请求递交至所述拦截器列表中下一特征信息所指向的拦截器的实例中,若所述开关状态表征为关闭状态时,将判断该服务请求不通过其拦截校验处理,以控制拦截服务器停止递交该服务请求至下一拦截器的实例中。
请参考图8,所述拦截器列表中存在特征信息所指向的拦截器为灰度拦截器的实例,关于该灰度拦截器的实例处理服务请求的实施方式,其具体实施步骤如下:
步骤S131”’,解析所述服务请求,确定该服务请求相对应的灰度信息;
灰度拦截器解析所述服务请求,确定该服务请求相对应的灰度信息,所述灰度信息一般是指用户的用户画像信息,例如,用户的性别信息、年龄信息、地址信息或者用户的粉丝数量、买家数量等,灰度拦截器通过校验服务请求所属的灰度信息,判断发送该服务请求的请求端是否符合使用新服务的条件,以限制获取新服务的用户的获取条件。
所述灰度信息一般为预先收集的信息,灰度拦截器通过响应所述服务请求,从相应的业务服务或数据库中获取该些预先收集的用户画像信息,将该用户画像信息构建为所述灰度信息进行校验处理。
步骤S132”’,根据预先配置的灰度策略信息,判断所述灰度信息是否满足该灰度策略信息中包括的灰度字段:
灰度拦截器确定所述服务请求的灰度信息后,将构建预先配置的所述灰度策略信息,判断该灰度信息是否满足所述获取策略信息中包括的一个或多个灰度字段。
所述的灰度策略信息中包括多个用于判断灰度信息是否满足相应条件的灰度字段,灰度拦截器构建所述灰度策略信息中包括的各个灰度字段,判断所述灰度信息所满足的灰度字段,例如,所述灰度字段的类型包括判断灰度信息中的年龄信息是否满足预设年龄、判断灰度信息中的粉丝量信息是否满足预设年龄等,且灰度拦截器根据灰度策略信息中设置当灰度信息满足某一个或多个灰度字段便确定该灰度信息为通过校验的策略信息,判断灰度信息是否通过其校验。
步骤S133”’,当该灰度信息满足所述灰度策略信息中一个或多个所述灰度字段时,该灰度信息所对应的服务请求通过拦截校验:
当灰度拦截器判断所述灰度信息满足所述灰度策略信息中一个或多个所述灰度信息时,则确定该灰度信息所对应的服务请求通过其校验,关于所述灰度策略信息中判断逻辑,即满足某一个或多个灰度字段即确定灰度信息所对应的服务请求通过校验的设置,为管理端预先设置,本领域技术人员可根据实际业务场景进行灵活设置,恕不赘述。
所述拦截器列表中各特征信息所指向的拦截器的实例的类型即各特征信息在拦截器列表中的排序(即对应的优先级)的设置,上述的叙述仅为举例说明,在实际的逻辑校验业务场景中,本领域的技术人员可根据实际应用场景灵活设计,恕不赘述。
通过所述拦截器列表的设置,使在线服务拥有多个拦截器进行拦截校验业务处理的功能,且可在同一拦截服务器中进行设置,通过配置服务器预先设置各拦截器的执行逻辑及优先级信息,并构建包含该些拦截器的特征信息及其优先级信息的所述拦截器配置信息,使拦截服务器可构建所述拦截器配置信息,配置相应的拦截器至在线服务中,且构造拥有确定各拦截器的执行顺序的所述拦截器列表,使逻辑服务器可根据所述拦截器列表,逐级将服务请求递交至相应的拦截器中进行校验处理,进而构造一个具有多拦截器进行逻辑校验的在线服务为平台提供旧服务转至新服务中的逻辑校验服务。
相应的,在线服务开放相应的拦截器更新服务至管理端,使管理端在继承当前所述拦截器列表中各特征信息所指向的拦截器的实例的情况下,进行新增拦截器、修改现有拦截器的校验逻辑以及修改各拦截器的执行顺序等更新操作,具体的实施方式请参考后续步骤的叙述,本步骤恕不赘述。
以上的典型实施例及其变化实施例充分揭示了本申请的服务请求处理方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参阅图9,本方法还包括如下平行步骤:
步骤S14,接收由管理端推送的拦截器更新信息,产生该拦截器更新信息相对应的更新操作事件:
拦截服务器接收由配置服务器中转推送管理端所定义的所述拦截器更新信息,并根据该拦截器更新信息所表征的更新操作,产生相应的所述更新操作事件,以根据该更新操作事件,更新在线服务中的拦截校验处理业务。
在线服务通过开放拦截器更新接口,以便管理端通过该接口向拦截服务器推送所述拦截器更新信息,使拦截器根据该拦截器更新信息生成相应的更新操作事件,将当前在线服务中的拦截校验处理业务更新为所述拦截器更新信息所定义的拦截校验处理业务。
所述更新操作事件的类型一般包括新增拦截器操作、优先级调整操作及拦截器调整操作等拦截器更新操作,所述新增拦截器操作用于向在线服务新增拦截器进行配置,所述优先级调整操作用于调整所述拦截器列表中各特征信息的优先级信息,以调整各拦截器的执行顺序,所述拦截器调整操作用于调整在线服务中当前相应的拦截器的拦截校验逻辑,各更新操作事件的具体实施方式其参考后续相应的执行方式。
步骤S15,当所述更新操作事件表征为新增拦截器操作时,获取该事件所包含由管理端所定义的一个或多个新拦截器的特征信息及其优先级信息,将该些特征信息所指向的新拦截器的实例配置到在线服务中,并将该些特征信息添加至所述拦截器列表中,且依照所述拦截器列表中各特征信息所对应的优先级信息,更新该些特征信息在所述拦截器列表中的排序:
当拦截服务器根据所述拦截器更新信息所产生的更新操作事件表征为新增拦截器操作时,拦截服务器将获取该事件中由实施管理端所定义的一个或多个新拦截器的特征信息及优先级信息,以将该些特征信息所执行的新拦截器的实例配置至所述在线服务中,并将该些特征信息添加至所述拦截器列表中,且依照所述拦截器列表中各特征信息所对应的优先级信息,更新该拦截器列表中所储存的各特征信息的排序。
步骤S16,当所述更新操作事件表征为优先级调整操作时,响应该事件中作用于所述拦截器列表中各特征信息的优先级调整指令,更新该些特征信息在所述拦截器列表中的排序,以对应调整各拦截器的实例的服务请求拦截顺序:
当拦截服务器根据所述拦截器更新信息所产生的更新操作事件表征为优先级调整操作时,拦截服务器将相应该事件中作用于所述拦截器列表中各特征信息的优先级调整指令,确定该些优先级调整指令所指向的特征信息及其优先级信息,更新所述拦截器列表中相应的特征信息的优先级信息,以调整所述拦截器列表中各特征信息所指向的拦截器的实例的服务请求拦截顺序,即修改在线服务中各拦截器的执行顺序。
步骤S17,当所述更新操作事件表征为拦截器调整操作时,响应该事件中作用于所述拦截器列表中任一特征信息的逻辑调整指令,更新该特征信息所指向拦截器的实例的校验逻辑:
当拦截服务器根据所述拦截器更新信息所产生的更新操作事件表征为拦截器调整操作时,拦截服务器将相应该事件中作用于所述拦截器列表中任一特征信息的逻辑调整指令,确定该指令所执行的特征信息相对应的拦截器的实例,并根据逻辑调整指令所对应的校验逻辑,修改该拦截器的实例的校验逻辑,使该拦截器的实例在逻辑校验处理服务请求时,其校验逻辑符合所述拦截器更新信息所定义的校验逻辑。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种服务请求处理装置,按照这一思路,请参阅图10,其中的一个典型实施例中,该装置包括:拦截器配置获取模块11、拦截器实例配置模块12以及服务请求处理模块13,其中,拦截器配置获取模块11,用于从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息;拦截器实例配置模块12,用于获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;服务请求处理模块13,用于顺序将外部触发的服务请求传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果决定是否将所述服务请求交付所述在线服务响应。
一种实施例中,所述拦截器实例配置模块12包括:配置信息解析子模块,用于解析所述拦截器配置信息,获取该拦截配置信息包括的一个或多个拦截器的特征信息及其优先级信息;实例获取子模块,用于根据该些拦截器的所述特征信息,获取该些特征信息所指向拦截器的实例;实例配置子模块,用于将该些拦截器的实例配置至在线服务中,并将该些实例所属的特征信息储存至拦截器列表中,且根据该些特征信息各自对应的所述优先级信息,排序该拦截器列表中的各个所述实例,以完成所述拦截器配置信息的实例配置。
一种实施例中,所述服务请求处理模块13包括:请求传递子模块,用于依照接收各个所述服务请求的访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理;实例触发子模块,用于根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至排序靠前的特征信息所指向的拦截器的的实例中,以触发该实例对所述服务请求进行拦截校验处理;处理结果生成子模块,用于当所述服务请求通过该实例的校验后,将该服务请求传递至所述拦截器列表的下一特征信息所指向的实例中进行校验,以此类推,完成所有服务请求的拦截校验处理,以生成各服务请求的处理结果;请求交付子模块,用于将处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中。
为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述服务请求处理方法所实现的计算机程序。具体请参阅图11,图11为本实施例计算机设备基本结构框图。
如图11所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种服务请求处理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种服务请求处理方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本发明的服务请求处理装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有服务请求处理装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的服务请求处理方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例服务请求处理方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请通过配置服务器向在线服务下发拦截器配置信息,使在线服务根据拦截器配置信息进行拦截器的配置,以结合管理端通过配置服务器定义的拦截器构造多功能的拦截校验业务,且构建用于有序地调用各拦截器进行校验处理的拦截器列表,以便在线服务构建该拦截器列表,将其拦截的服务请求逐级递交至其配置的各拦截器中进行校验处理。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (9)

1.一种服务请求处理方法,其特征在于,包括如下步骤:
从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息,所述的配置服务器用于储存管理端预先定义的拦截器的实例以及各拦截器的所述特征信息及其优先级信息,且将各所述特征信息及各自对应的优先级信息封装为所述拦截器配置信息;
获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;
将外部触发的由电商平台的商家用户发送给旧服务器的用于获取店铺中各商品信息的服务请求,顺序传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果判断所述服务请求是否满足新服务器中部署的新在线服务的校验要求,当满足时,将所述服务请求交付新服务器中部署的所述新在线服务响应,否则交付旧服务器的旧服务进行响应;
所述特征信息所指向的拦截器的实例包括灰度拦截器实例,所述灰度拦截器实例处理服务请求所执行的具体步骤如下:解析所述服务请求,确定该服务请求相对应的灰度信息,所述灰度信息为用户画像信息;根据预先配置的灰度策略信息,判断所述灰度信息是否满足该灰度策略信息中包括的灰度字段,以判断发送该服务请求的请求端是否符合使用新服务的条件,以限制获取新服务的用户的获取条件;当该灰度信息满足所述灰度策略信息中一个或多个所述灰度字段时,该灰度信息所对应的服务请求通过拦截校验。
2.根据权利要求1所述的方法,其特征在于,获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表的步骤,包括:
解析所述拦截器配置信息,获取该拦截配置信息包括的一个或多个拦截器的特征信息及其优先级信息;
根据该些拦截器的所述特征信息,获取该些特征信息所指向拦截器的实例;
将该些拦截器的实例配置至在线服务中,并将该些实例所属的特征信息储存至拦截器列表中,且根据该些特征信息各自对应的所述优先级信息,排序该拦截器列表中的各个所述实例,以完成所述拦截器配置信息的实例配置。
3.根据权利要求1所述的方法,其特征在于,将外部触发的由电商平台的商家用户发送给旧服务器的用于获取店铺中各商品信息的服务请求,顺序传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果判断所述服务请求是否满足新服务器中部署的新在线服务的校验要求,当满足时,将所述服务请求交付新服务器中部署的所述新在线服务响应,否则交付旧服务器的旧服务进行响应的步骤,包括:
依照接收各个所述服务请求的访问时间,将该些服务请求依次传递至所述拦截器列表中各个拦截器的实例进行拦截校验处理;
根据所述拦截器列表中各个所述特征信息的排序,将当前需要进行校验处理的服务请求传递至排序靠前的特征信息所指向的拦截器的的实例中,以触发该实例对所述服务请求进行拦截校验处理;
当所述服务请求通过该实例的校验后,将该服务请求传递至所述拦截器列表的下一特征信息所指向的实例中进行校验,以此类推,完成所有服务请求的拦截校验处理,以生成各服务请求的处理结果;
将处理结果表征为通过拦截器列表中所有特征信息所指向的实例的校验的服务请求交付至所述在线服务中。
4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述特征信息所指向的拦截器的实例包括白名单拦截器实例,所述白名单拦截器实例处理服务请求所执行的具体步骤如下:
解析所述服务请求,确定该服务请求相对应的请求端特征信息;
查询白名单列表中是否存在该请求端特征信息,所述白名单列表中储存着多个不同请求端相对应的所述请求端特征信息;
当所述白名单列表中存在该请求端特征信息时,所述服务请求通过拦截校验。
5.根据权利要求1至3中任意一项所述的方法,其特征在于,所述特征信息所指向的拦截器的实例包括总开关拦截器实例,所述总开关拦截器实例处理服务请求所执行的具体步骤如下:
接收所述服务请求,解析开关配置信息,确定该开关配置信息所配置的开关状态,所述开关配置信息预先配置至总开关拦截器中;
当所述开关状态表征为开启时,开放所述服务请求,将该服务请求递交至所述拦截器列表中下一特征信息所指向的拦截器的实例中,若表征为关闭,则停止递交该服务请求。
6.根据权利要求1至3中任意一项所述的方法,其特征在于,包括如下平行步骤:
接收由管理端推送的拦截器更新信息,产生该拦截器更新信息相对应的更新操作事件;
当所述更新操作事件表征为新增拦截器操作时,获取该事件所包含由管理端所定义的一个或多个新拦截器的特征信息及其优先级信息,将该些特征信息所指向的新拦截器的实例配置到在线服务中,并将该些特征信息添加至所述拦截器列表中,且依照所述拦截器列表中各特征信息所对应的优先级信息,更新该些特征信息在所述拦截器列表中的排序;
当所述更新操作事件表征为优先级调整操作时,响应该事件中作用于所述拦截器列表中各特征信息的优先级调整指令,更新该些特征信息在所述拦截器列表中的排序,以对应调整各拦截器的实例的服务请求拦截顺序;
当所述更新操作事件表征为拦截器调整操作时,响应该事件中作用于所述拦截器列表中任一特征信息的逻辑调整指令,更新该特征信息所指向拦截器的实例的校验逻辑。
7.一种服务请求处理装置,其特征在于,其包括:
拦截器配置获取模块,用于从配置服务器获取拦截器配置信息,所述配置信息包含在线服务需调用的一个或多个拦截器的特征信息及其优先级信息,所述的配置服务器用于储存管理端预先定义的拦截器的实例以及各拦截器的所述特征信息及其优先级信息,且将各所述特征信息及各自对应的优先级信息封装为所述拦截器配置信息;
拦截器实例配置模块,用于获取各个特征信息所指向的拦截器的实例,将各实例配置到在线服务中,形成根据所述优先级信息对各特征信息进行排序的拦截器列表;
服务请求处理模块,用于将外部触发的由电商平台的商家用户发送给旧服务器的用于获取店铺中各商品信息的服务请求,顺序传递给所述在线服务已配置的所述拦截器列表中的各个特征信息所指向的拦截器的实例处理,以根据所述实例的处理结果判断所述服务请求是否满足新服务器中部署的新在线服务的校验要求,当满足时,将所述服务请求交付所述新在线服务响应,否则交付旧服务器的旧服务进行响应;
其中,所述特征信息所指向的拦截器的实例包括灰度拦截器实例,所述灰度拦截器实例处理服务请求所执行的功能包括:解析所述服务请求,确定该服务请求相对应的灰度信息,所述灰度信息为用户画像信息;根据预先配置的灰度策略信息,判断所述灰度信息是否满足该灰度策略信息中包括的灰度字段,以判断发送该服务请求的请求端是否符合使用新服务的条件,以限制获取新服务的用户的获取条件;当该灰度信息满足所述灰度策略信息中一个或多个所述灰度字段时,该灰度信息所对应的服务请求通过拦截校验。
8.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至6中任一项所述的方法的步骤。
9.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至6中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
CN202110929135.6A 2021-08-13 2021-08-13 服务请求处理方法及其装置、设备与介质 Active CN113691511B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110929135.6A CN113691511B (zh) 2021-08-13 2021-08-13 服务请求处理方法及其装置、设备与介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110929135.6A CN113691511B (zh) 2021-08-13 2021-08-13 服务请求处理方法及其装置、设备与介质

Publications (2)

Publication Number Publication Date
CN113691511A CN113691511A (zh) 2021-11-23
CN113691511B true CN113691511B (zh) 2024-01-19

Family

ID=78579757

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110929135.6A Active CN113691511B (zh) 2021-08-13 2021-08-13 服务请求处理方法及其装置、设备与介质

Country Status (1)

Country Link
CN (1) CN113691511B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114430423A (zh) * 2022-01-26 2022-05-03 百果园技术(新加坡)有限公司 一种终端间的通讯管理方法、装置、设备及存储介质
CN114760357A (zh) * 2022-03-23 2022-07-15 北京字节跳动网络技术有限公司 一种请求处理方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111580846A (zh) * 2020-05-15 2020-08-25 厦门靠谱云股份有限公司 一种基于混合框架的微服务灰度发布方法
CN111586095A (zh) * 2020-03-26 2020-08-25 中国平安财产保险股份有限公司 基于微服务灰度发布方法、装置、计算机设备及存储介质
CN112596932A (zh) * 2021-01-04 2021-04-02 天冕信息技术(深圳)有限公司 服务注册及拦截方法、装置、电子设备及可读存储介质
CN113132363A (zh) * 2021-04-02 2021-07-16 上海万物新生环保科技集团有限公司 一种前后端安全验证方法及设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10225209B2 (en) * 2015-01-21 2019-03-05 Oracle International Corporation System and method for interceptors in a multitenant application server environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586095A (zh) * 2020-03-26 2020-08-25 中国平安财产保险股份有限公司 基于微服务灰度发布方法、装置、计算机设备及存储介质
CN111580846A (zh) * 2020-05-15 2020-08-25 厦门靠谱云股份有限公司 一种基于混合框架的微服务灰度发布方法
CN112596932A (zh) * 2021-01-04 2021-04-02 天冕信息技术(深圳)有限公司 服务注册及拦截方法、装置、电子设备及可读存储介质
CN113132363A (zh) * 2021-04-02 2021-07-16 上海万物新生环保科技集团有限公司 一种前后端安全验证方法及设备

Also Published As

Publication number Publication date
CN113691511A (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
WO2021109735A1 (zh) 一种基于跨链网络的资源处理方法及装置
CN113691511B (zh) 服务请求处理方法及其装置、设备与介质
CN111339145A (zh) 流程整合方法和平台、计算机可读存储介质
CN111726304A (zh) 信息处理方法、信息处理装置、计算机系统和介质
CN113630310B (zh) 一种分布式高可用网关系统
CN111435947A (zh) 电子消息控制
CN112991064B (zh) 业务处理方法、装置、计算机设备和存储介质
CN112860742A (zh) 集中式规则引擎服务调用、控制方法及装置、设备、介质
US10846156B2 (en) Methods, devices and computer program products for managing software function
US9438693B2 (en) System and method for message retry in a broadband gateway
GB2580420A (en) Electronic message adaptation
CN112565340B (zh) 分布式应用的服务调度方法、装置、计算机系统及介质
CN112966188B (zh) 收藏商品状态更新方法及其装置、设备与介质
CN112862500A (zh) 用户权益处理机动态装配方法及其装置、设备与介质
CN106408793A (zh) 一种适用于atm业务的业务组件共享方法及系统
US20190066161A1 (en) Predictive system for selecting groups of users in connection with a network service
CN112883300B (zh) 功能标签定制方法及其装置、设备与介质
US20190379585A1 (en) Aggregation platform, requirement owner, and methods thereof
CN112801641B (zh) 支付网关限购控制方法及其装置、设备与介质
CN112767020B (zh) 中间组件条件匹配执行方法及其装置、设备、介质
US8385195B2 (en) System and method for message processing in a broadband gateway
US11856048B2 (en) System and method for deferring data retrieval
CN113672371B (zh) 任务引擎执行方法及其装置、设备与介质
CN112819519A (zh) 会员规则批量处理方法及其装置、设备与介质
CN112907278A (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