CN112929280A - 一种应用请求处理方法、系统及计算机可读存储介质 - Google Patents
一种应用请求处理方法、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112929280A CN112929280A CN202110084659.XA CN202110084659A CN112929280A CN 112929280 A CN112929280 A CN 112929280A CN 202110084659 A CN202110084659 A CN 202110084659A CN 112929280 A CN112929280 A CN 112929280A
- Authority
- CN
- China
- Prior art keywords
- application
- transaction request
- unitization
- database
- packet
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 15
- 239000012634 fragment Substances 0.000 claims abstract description 87
- 238000000034 method Methods 0.000 claims abstract description 13
- 238000013507 mapping Methods 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 46
- 238000013475 authorization Methods 0.000 claims description 42
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000005192 partition Methods 0.000 claims description 4
- 239000000126 substance Substances 0.000 claims description 3
- 238000002955 isolation Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种应用请求处理方法、系统及计算机可读存储介质,所述方法包括:接入网关接收到用户提交的交易请求后,根据所述交易请求确定GRS路由分组信息;接入网关将所述交易请求转发到对应的目标应用单元化分组中由目标应用单元化分组对交易请求进行授权处理;其中,目标应用单元化分组为多个应用单元化分组中的一个,目标数据库分片为多个数据库分片中的一个。上述方案,由于将用户数据在不同的数据库分片中进行存储,且用户交易请求在不同的应用单元化分组中进行处理,能够实现故障隔离,提高系统稳定性。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种应用请求处理方法、系统及计算机可读存储介质。
背景技术
以信用卡核心系统为代表的现有IT系统,其基本架构可参照图1,参照图1,从授权接入适配层接收到用户的交易请求后,通过接入网关转发至核心授权服务系统,在核心授权服务系统中对用户的交易请求进行处理,同时,核心授权服务系统在对用户交易请求进行处理时会从数据库(DB,DataBase)中获取所需要的用户数据。
从图1中可以看出,现有信用卡核心系统中,所有的用户数据都集中在DB中进行存储,而所有的服务也是集中在核心授权服务系统中进行处理。
这种方案所存在的问题是:在系统日常运行过程中,一旦出现数据库未知故障、个别数据未知异常、触发某个特殊的未知BUG等,可能交叉关联影响到核心系统整体运行,从而可导致大面积用户的交易受到影响。
发明内容
本公开实施例提供一种应用请求处理方法、系统及存储介质,能够解决现有技术中由于用户数据集中存储且用户服务集中处理所带来的系统稳定性差的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种应用请求处理方法,该方法包括:
接入网关接收到用户提交的交易请求后,根据所述交易请求确定全局路由服务(GRS,Global Router Service)路由分组信息,其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号;
所述接入网关将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
所述目标应用单元化分组通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理;
其中,所述目标应用单元化分组为多个应用单元化分组中的一个,所述目标数据库分片为多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
进一步地,所述根据所述交易请求确定GRS路由分组信息,包括:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,
根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
进一步地,所述根据所述交易请求从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号。
进一步地,所述根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第一哈希处理,得到第一目标哈希值;
将所得到的第一目标哈希值与各个数据库分片所对应的哈希值区间进行比对,以确定所述第一目标哈希值落入哪一个数据库分片所对应的哈希值区间;
将所确定出的数据库分片的数据库分片号确定为所述交易请求所对应的数据库分片号。
进一步地,所述根据所述交易请求从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号。
进一步地,所述根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第二哈希处理,得到第二目标哈希值;
用0对所述第二哈希值进行异或计算后,再用2048取余,得到目标结果;
将所得到的目标结果与各个应用单元化分组所对应的取值区间进行比对,以确定所述目标结果落入哪一个应用单元化分组所对应的取值区间;
将所确定出的应用单元化分组的应用单元化分组号确定为所述交易请求所对应的应用单元化分组号。
根据本公开实施例的第二方面,提供一种应用请求处理系统,包括:接入网关、核心授权服务系统以及核心数据库;其中,
所述接入网关,用于在接收到用户提交的交易请求后,根据所述交易请求确定全局路由服务GRS路由分组信息,其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号;还用于将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
所述核心授权服务系统中的所述目标应用单元化分组,用于通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理;
其中,所述目标应用单元化分组为所述核心授权服务系统中的多个应用单元化分组中的一个,所述目标数据库分片为所述核心数据库中的多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
进一步地,所述接入网关用于通过以下方式确定GRS路由分组信息:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,
根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
进一步地,所述接入网关用于通过以下方式确定所述交易请求所对应的应用单元化分组号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号。
根据本公开实施例的第三方面,提供了一种计算机可读的存储介质,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现本公开实施例第一方面中任一项所述的应用请求处理方法中所执行的步骤。
本公开实施例提供了一种应用请求处理方法,包括:接入网关接收到用户提交的交易请求后,根据所述交易请求确定GRS路由分组信息,其中,GRS路由分组信息包括:应用单元化分组号和数据库分片号;接入网关将所述交易请求转发到应用单元化分组号对应的目标应用单元化分组中;目标应用单元化分组通过操作数据库分片号所对应的目标数据库分片对交易请求进行授权处理;其中,目标应用单元化分组为多个应用单元化分组中的一个,目标数据库分片为多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。上述方案中,由于用户数据在不同的数据库分片中进行存储,且用户交易请求在不同的应用单元化分组中进行处理,这使得用户数据在存储上分片隔离,而用户服务单元化隔离,从而至少达到以下有益效果:当某个数据库分片出现未知故障、个别数据未知异常、触发某个特殊的未知BUG时,则只影响到该分片上的用户,对其他分片的用户不影响,从而将不利影响控制在分片范围之内;另外,当未知故障导致某一个应用单元化分组出现故障、堵塞时,也可能够将故障隔离在当前分组之内,不影响其它分组;从而提高系统稳定性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开提供的现有的信用卡核心系统的结构示意图;
图2是本公开实施例提供的一种应用请求处理方法的流程图;
图3是本公开实施例提供的一种核心授权服务系统的结构示意图;
图4是本公开实施例提供的一种应用请求处理系统的结构图;
图5是本公开实施例提供的一种应用请求处理系统中的核心授权服务系统的结构图;
图6是本公开实施例提供的一种应用请求处理系统中的核心数据库的结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的系统和方法的例子。
实施例一
本公开实施例一提供了一种应用请求处理方法,应用于以信用卡核心系统为代表的应用服务系统,所述应用服务系统中包括:多个应用单元化分组和多个数据库分片;多个应用单元化分组是核心授权服务系统的组成部分,多个数据库分片式核心数据库的组成部分;多个应用单元化分组所提供的服务之间互相隔离,且多个数据库分片之间数据隔离。
如图2所示,所述应用处理方法包括以下步骤:
步骤101、接入网关接收到用户提交的交易请求后,根据所述交易请求确定GRS路由分组信息;
其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号。
在本发明的一种可选实施方式中,所述根据所述交易请求确定GRS路由分组信息,包括:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
该步骤中,首先,接入网关对接收到的交易请求进行解析,获取以下用户信息至少其中之一:卡号、证件号及客户号;然后,根据所获取的用户信息获取映射关系客户号;之后,根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号和应用单元化分组号。
实际实现时,API网关接收到的用户交易请求可以是标准通讯协议及标准报文(HTTP+JSON),GRS路由服务作为API网关中的一个子模块用于确定当前用户的GRS路由分组信息。GRS路由服务获取API网关转发的HTTP JSON报文,并扩展HTTP报文请求Stream让其支持可多次重复读写,GRS路由服务解析读取到的HTTP JSON报文,获取以下用户信息:卡号、证件号或客户号;然后根据获取到的用户信息先去远程字典服务(Redis,RemoteDictionary Server)查询映射关系,如果Redis异常,则自动降级查询数据库,获取映射关系客户号。
具体的,所述根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第一哈希处理,得到第一目标哈希值;
将所得到的第一目标哈希值与各个数据库分片所对应的哈希值区间进行比对,以确定所述第一目标哈希值落入哪一个数据库分片所对应的哈希值区间;
将所确定出的数据库分片的数据库分片号确定为所述交易请求所对应的数据库分片号。
具体的,所述根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第二哈希处理,得到第二目标哈希值;
用0对所述第二哈希值进行异或计算后,再用2048取余,得到目标结果;
将所得到的目标结果与各个应用单元化分组所对应的取值区间进行比对,以确定所述目标结果落入哪一个应用单元化分组所对应的取值区间;
将所确定出的应用单元化分组的应用单元化分组号确定为所述交易请求所对应的应用单元化分组号。
实际实现时,针对每一个数据库分片会预先设置与其相对应的哈希值取值区间,相应的,针对每一个应用单元化分组也会预先设置与其相对应的取值区间。
需要说明的是,本发明中所采用的哈希算法可以是现有哈希算法,上述第一哈希算法和第二哈希算法可以是相同的哈希算法,也可以是不同的哈希算法。
步骤102、所述接入网关将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
实际实现时,每一个应用单元化分组服务在部署时,需要在注册中心进行注册,注册信息包括:服务名称和Context-Path,注册中心在服务名称和Context-Path中分别添加单元化分组号,应用单元化分组在核心授权服务系统中部署成功后,实现单元化分组。
该步骤中,API网关获取到GRS路由分组信息后,对交易请求的URL地址扩展GRS分组号,然后,重定向转发到后端处理;具体的,API网关组件Ribbon按照在注册中心获取到单元化分组服务注册信息将交易请求转发到对应的应用单元化分组。
步骤103、所述目标应用单元化分组通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理。
其中,所述目标应用单元化分组为多个应用单元化分组中的一个,所述目标数据库分片为多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
在本发明的一种可选实施方式中,所述应用单元化分组对交易请求进行处理的基本流程,简单来说,包括:
1、卡片、账户、客户信息查询;
2、信息校验;
3、管控信息校验;
4、交易信息记录。
在交易请求的处理过程中,应用单元化分组和数据库分片之间的基本交互为:应用单元化分组内的服务会向数据库分片发起请求以查询、更新、新增与交易授权有关的信息(卡片、账户、客户、历史记录等),数据库分片会返回增改查操作的结果。
综上,本公开实施例提供了一种应用请求处理方法,包括:接入网关接收到用户提交的交易请求后,根据所述交易请求确定GRS路由分组信息,其中,GRS路由分组信息包括:应用单元化分组号和数据库分片号;接入网关将所述交易请求转发到应用单元化分组号对应的目标应用单元化分组中;目标应用单元化分组通过操作数据库分片号所对应的目标数据库分片对交易请求进行授权处理;其中,目标应用单元化分组为多个应用单元化分组中的一个,目标数据库分片为多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。上述方案中,由于用户数据在不同的数据库分片中进行存储,且用户交易请求在不同的应用单元化分组中进行处理,这使得用户数据在存储上分片隔离且用户服务单元化隔离,可见,本发明实施例所提供的应用请求处理方法至少可以达到以下有益效果:当某个数据库分片出现未知故障、个别数据未知异常、触发某个特殊的未知BUG时,则只影响到该分片上的用户,对其他分片的用户不影响,从而将不利影响控制在分片范围之内;另外,当未知故障导致某一个应用单元化分组出现故障、堵塞时,也可能够将故障隔离在当前分组之内,不影响其它分组;从而提高系统稳定性。
下面以银行核心授权交易系统为例,对本公开实施例所提供的应用请求处理方法做以下详细说明:
图3是一种示例性的核心授权交易系统的基本架构图,参照图3,所述系统包括:API网关、核心授权服务系统和核心数据库;其中,API网关统一接收用户提交的交易请求,并将接收到的交易请求转发到后端进行处理。
核心授权服务系统中包括多个应用单元化分组,每个应用单元化分组这个提供一种或多种应用服务,各个应用单元化分组之间物理隔离;同时,每一个应用单元化分组中的应用服务都在注册中心单独配置一份应用配置,从而保持各分组的独立性。每一个应用服务在部署时,需要将应用服务的注册信息注册到注册中心。API网关接入GRS路由服务获取交易请求所路由到的应用单元化分组号和数据库分片号,通过获取应用服务的注册信息转发交易请求到对应的应用单元化分组从而完成授权。
API网关对交易请求的处理流程如下:
S11、API网关接收卡中心标准通讯协议及标准报文(HTTP+JSON),转发到GRS路由服务处理,从而获取GRS路由分组信息;
具体的,GRS路由分组信息包括:应用单元化分组号和数据库分片号。
API网关调用内部GRS路由服务来获取GRS路由分组信息,具体的,GRS路由服务获取HTTP JSON报文,并扩展HTTP报文请求Stream让其支持可多次重复读写,GRS路由服务解析读取到的HTTP JSON报文,并按照预设的报文格式,对报文进行解析得到用户信息,包括:卡号、证件号或客户号;根据获取到的用户信息先去Redis查询映射关系,如果Redis异常,则自动降级查询数据库,获取映射关系客户号。
GRS路由服务获取到映射关系客户号后,根据所获取的映射关系客户号确定当前交易所对应的数据库分片号和应用单元化分组号。
具体的,通过以下方式确定数据库分片号|:
按照与数据库一致的哈希规则对映射关系客户号进行哈希处理得到一个HASH值,确定HASH值后与数据库分片的HASH区间值进行比对,如果当前哈希值落入哪一个数据库分片的HASH值区间内,则当前哈希值对应该数据库分片,从而确定该笔交易对应该数据库分片。
具体的,通过以下方式确定应用单元化分组号:
获取映射关系客户号后,对所述映射关系客户号进行哈希处理(比如,按照Bdkr哈希算法),计算得到一个哈希值;用0对得到的哈希值进行异或计算后,再用2048取余,得到一个计算结果;将所得到的计算结果与各个应用单元化分组所对应的取值区间进行比对,从而确定所述目标结果落入哪一个应用单元化分组所对应的取值区间;将所确定出的应用单元化分组的应用单元化分组号确定为当前交易请求所对应的应用单元化分组号。
S12、API网关根据接收到的GRS路由分组将当前交易请求重定向到后端进行处理;
API网关获取到GRS路由分组后,对交易请求的URL地址扩展GRS分组号,同时重定向转发到后端处理;具体的,API网关组件Ribbon按照在注册中心获取到的单元化分组服务注册信息,转发当前交易请求至对应的应用单元化分组。
S13、应用单元化分组对接收到的交易请求进行处理;
具体的,应用单元化分组对交易请求进行处理的基本流程至少包括:
1、卡片、账户、客户信息查询;
2、信息校验;
3、管控信息校验;
4、交易信息记录。
在交易请求的处理过程中,应用单元化分组和数据库分片之间的基本交互为:应用单元化分组内的服务会向数据库分片发起请求以查询、更新、新增与交易授权有关的信息(卡片、账户、客户、历史记录等),数据库分片会返回增改查操作的结果。具体的,参照图3,应用单元化分组中的应用服务在处理交易请求中生成sql语句并将sql语句交由对应的授权处理分组转发至对应的数据库分片,在相应的数据库分片中执行这些sql语句从而实现数据库操作。
实际实现时,参照图3,所述核心授权交易系统还包括数据采集模块和分布式数据库集群(比如,HBase集群);其中,数据采集模块用于对存储在数据库分片中的交易信息和日志进行收集,并将收集到的数据发送给分布式数据库集群。这么做的好处是:
1)下游系统基于这些信息可以出具业务分析报表;
2)节省数据库分片的存储空间:数据库分片的存储空间有限,只能保存近期数据且关系到实时交易的处理性能。HBase集群可以保存大量数据,如果要查询历史数据(该数据在数据库分片已清除),可以去HBase查询,既能查到需要的数据又不会影响实时交易的处理性能。
本示例中,核心授权交易系统通过设置单元化的应用分组以及分片式的数据存储,可以实现故障隔离机制;在系统日常运行、扩容时,假设某分组和/或分片出现数据库未知故障、个别数据未知异常、触发某个特殊的未知BUG等情况,故障隔离机制将发挥以下作用:
1)应用层:如果未知故障导致某个应用服务出现故障、堵塞,按照分片对应的应用单元化分组划定,系统把故障隔离在该应用单元化分组以内,不影响其它分组;
2)核心数据库层包括授权处理分组和数据库分片,如下:
授权处理分组:如果未知故障导致某个数据采集分组出现故障、堵塞,按照分片对应的分组划定,系统把故障隔离在该数据采集分组以内,不影响其它分组;
数据库分片:如果未知故障导致某个数据库分片出现故障、堵塞,按照分片划定,自动把故障隔离在该数据库分片以内,不影响其它数据库分片;
3)数据采集层:如果未知故障导致某个数据采集模块出现故障、堵塞,按照分片划定,自动把故障隔离在该数据采集模块以内,不影响其它数据采集模块。
另一方面,本示例中所提供的核心授权交易系统还具有非常好的可扩展性,比如,API网关及其GRS路由服务均支持水平扩容;应用单元化分组也支持水平扩容;核心数据库中的授权处理分组和数据库分片均支持水平扩容;数据采集模块支持水平扩容,分布式数据库集群支持横向水平扩容。
实施例二
本公开实施例二提供一种应用请求处理系统,参照图4,所述系统:包括接入网关41、核心授权服务系统42以及核心数据库43;其中,
所述接入网关,用于在接收到用户提交的交易请求后,根据所述交易请求确定全局路由服务GRS路由分组信息,其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号;还用于将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
所述核心授权服务系统中的所述目标应用单元化分组,用于通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理;
参照图5,所述核心授权服务系统中包括多个应用单元化分组(应用单元化分组1至应用单元化分组n),每个应用单元化分组中包括多个应用服务,所述目标应用单元化分组为所述核心授权服务系统中的多个应用单元化分组中的一个;参照图6,所述核心数据库中包括多个数据库分片(数据库分片1至数据库分片n),所述目标数据库分片为所述核心数据库中的多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
所述接入网关41,用于通过以下方式确定GRS路由分组信息:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,
根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
具体的,所述接入网关41,用于通过以下方式确定出与所述交易请求相对应的数据库分片号:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号。
进一步的,所述接入网关41,用于通过以下方式确定所述交易请求所对应的数据库分片号:
获取映射关系客户号后,对所述映射关系客户号进行第一哈希处理,得到第一目标哈希值;
将所得到的第一目标哈希值与各个数据库分片所对应的哈希值区间进行比对,以确定所述第一目标哈希值落入哪一个数据库分片所对应的哈希值区间;
将所确定出的数据库分片的数据库分片号确定为所述交易请求所对应的数据库分片号。
具体的,所述接入网关41,用于通过以下方式确定出与所述交易请求对应的应用单元化分组号:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号。
进一步的,所述接入网关用于通过以下方式确定所述交易请求所对应的应用单元化分组号:
获取映射关系客户号后,对所述映射关系客户号进行第二哈希处理,得到第二目标哈希值;
用0对所述第二哈希值进行异或计算后,再用2048取余,得到目标结果;
将所得到的目标结果与各个应用单元化分组所对应的取值区间进行比对,以确定所述目标结果落入哪一个应用单元化分组所对应的取值区间;
将所确定出的应用单元化分组的应用单元化分组号确定为所述交易请求所对应的应用单元化分组号。
实施例三
本发明实施例三提供了一种计算机可读的存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有至少一条计算机指令,该指令被处理器执行时实现本发明实施例一所描述的应用请求处理方法,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种应用请求处理方法,其特征在于,所述方法包括:
接入网关接收到用户提交的交易请求后,根据所述交易请求确定全局路由服务GRS路由分组信息,其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号;
所述接入网关将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
所述目标应用单元化分组通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理;
其中,所述目标应用单元化分组为多个应用单元化分组中的一个,所述目标数据库分片为多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
2.根据权利要求1所述的方法,其特征在于,所述根据所述交易请求确定GRS路由分组信息,包括:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,
根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
3.根据权利要求2所述的方法,其特征在于,所述根据所述交易请求从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号。
4.根据权利要求3所述的方法,其特征在于,所述根据所获取的映射关系客户号确定所述交易请求所对应的数据库分片号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第一哈希处理,得到第一目标哈希值;
将所得到的第一目标哈希值与各个数据库分片所对应的哈希值区间进行比对,以确定所述第一目标哈希值落入哪一个数据库分片所对应的哈希值区间;
将所确定出的数据库分片的数据库分片号确定为所述交易请求所对应的数据库分片号。
5.根据权利要求2所述的方法,其特征在于,所述根据所述交易请求从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号。
6.根据权利要求3所述的方法,其特征在于,所述根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号,包括:
获取映射关系客户号后,对所述映射关系客户号进行第二哈希处理,得到第二目标哈希值;
用0对所述第二哈希值进行异或计算后,再用2048取余,得到目标结果;
将所得到的目标结果与各个应用单元化分组所对应的取值区间进行比对,以确定所述目标结果落入哪一个应用单元化分组所对应的取值区间;
将所确定出的应用单元化分组的应用单元化分组号确定为所述交易请求所对应的应用单元化分组号。
7.一种应用请求处理系统,其特征在于,包括接入网关、核心授权服务系统以及核心数据库;其中,
所述接入网关,用于在接收到用户提交的交易请求后,根据所述交易请求确定全局路由服务GRS路由分组信息,其中,所述GRS路由分组信息包括:应用单元化分组号和数据库分片号;还用于将所述交易请求转发到所述应用单元化分组号对应的目标应用单元化分组中;
所述核心授权服务系统中的所述目标应用单元化分组,用于通过操作所述数据库分片号所对应的目标数据库分片对所述交易请求进行授权处理;
其中,所述目标应用单元化分组为所述核心授权服务系统中的多个应用单元化分组中的一个,所述目标数据库分片为所述核心数据库中的多个数据库分片中的一个,且所述目标应用单元化分组是与所述目标数据库分片相对应的应用单元化分组。
8.根据权利要求7所述的系统,其特征在于,所述接入网关用于通过以下方式确定GRS路由分组信息:
根据所述交易请求,从多个数据库分片所对应的多个数据库分片号中,确定出与所述交易请求相对应的数据库分片号;以及,
根据所述交易请求,从多个应用单元化分组所对应的多个应用单元化分组号中,确定出与所述交易请求对应的应用单元化分组号。
9.根据权利要求7所述的系统,其特征在于,所述接入网关用于通过以下方式确定所述交易请求所对应的应用单元化分组号,包括:
所述接入网关对接收到的交易请求进行解析后,获取以下用户信息至少其中之一:卡号、证件号及客户号;
根据所获取的用户信息获取映射关系客户号;
根据所获取的映射关系客户号确定所述交易请求所对应的应用单元化分组号。
10.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求1至权利要求6中任意一项所述的应用请求处理方法中所执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084659.XA CN112929280A (zh) | 2021-01-21 | 2021-01-21 | 一种应用请求处理方法、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084659.XA CN112929280A (zh) | 2021-01-21 | 2021-01-21 | 一种应用请求处理方法、系统及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112929280A true CN112929280A (zh) | 2021-06-08 |
Family
ID=76164285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110084659.XA Pending CN112929280A (zh) | 2021-01-21 | 2021-01-21 | 一种应用请求处理方法、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112929280A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108351900A (zh) * | 2015-10-07 | 2018-07-31 | 甲骨文国际公司 | 用于分片的关系数据库组织 |
US20190155795A1 (en) * | 2016-10-24 | 2019-05-23 | Tencent Technology (Shenzhen) Company Limited | Distributed database system, transaction processing method, lock server and storage medium |
CN110727738A (zh) * | 2019-12-19 | 2020-01-24 | 北京江融信科技有限公司 | 基于数据分片的全局路由系统、电子设备及存储介质 |
CN111367884A (zh) * | 2020-02-26 | 2020-07-03 | 卓望数码技术(深圳)有限公司 | 分片数据库路由方法、系统、设备及存储介质 |
CN111897791A (zh) * | 2020-07-15 | 2020-11-06 | 银联商务股份有限公司 | 一种业务分流方法、装置、设备和存储介质 |
-
2021
- 2021-01-21 CN CN202110084659.XA patent/CN112929280A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108351900A (zh) * | 2015-10-07 | 2018-07-31 | 甲骨文国际公司 | 用于分片的关系数据库组织 |
US20190155795A1 (en) * | 2016-10-24 | 2019-05-23 | Tencent Technology (Shenzhen) Company Limited | Distributed database system, transaction processing method, lock server and storage medium |
CN110727738A (zh) * | 2019-12-19 | 2020-01-24 | 北京江融信科技有限公司 | 基于数据分片的全局路由系统、电子设备及存储介质 |
CN111367884A (zh) * | 2020-02-26 | 2020-07-03 | 卓望数码技术(深圳)有限公司 | 分片数据库路由方法、系统、设备及存储介质 |
CN111897791A (zh) * | 2020-07-15 | 2020-11-06 | 银联商务股份有限公司 | 一种业务分流方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7428522B1 (en) | Real-time search term popularity determination, by search origin geographic location | |
CN108712426B (zh) | 基于用户行为埋点的爬虫识别方法及系统 | |
US20020138511A1 (en) | Method and system for class-based management of dynamic content in a networked environment | |
US20140351226A1 (en) | Distributed Feature Collection and Correlation Engine | |
CN110162543A (zh) | 一种信息查询方法及装置 | |
CN103493455A (zh) | 使用经修改的主机名的全球流量管理 | |
CN108228322B (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN111130947B (zh) | 一种基于服务验证的网络空间测绘方法 | |
WO2019100853A1 (zh) | 分页查询方法及装置和电子设备 | |
CN114513488B (zh) | 资源访问方法、装置、计算机设备和存储介质 | |
CN107454120A (zh) | 网络攻击防御系统和防御网络攻击的方法 | |
CN104899278A (zh) | 一种Hbase数据库数据操作日志的生成方法及装置 | |
CN113489788A (zh) | 数据路由控制、数据分析处理方法及装置、设备、介质 | |
CN114398520A (zh) | 数据检索方法、系统、装置、电子设备及存储介质 | |
CN110659971A (zh) | 一种交易数据处理方法及装置 | |
CN109413224B (zh) | 报文转发方法和装置 | |
CN112633867A (zh) | 一种交易请求处理方法和装置 | |
US11973738B2 (en) | Domain name system analysis on edge network devices | |
WO2001075632A1 (en) | Geographic location estimation method for network addresses entities | |
AU2001253189A1 (en) | Geographic location estimation method for network addresses entities | |
CN112929280A (zh) | 一种应用请求处理方法、系统及计算机可读存储介质 | |
CN113395367B (zh) | Https业务识别方法、装置、存储介质及电子设备 | |
CN116366353A (zh) | 基于x86平台的业务登录方法、装置、介质及平台 | |
US20230069845A1 (en) | Using a threat intelligence framework to populate a recursive dns server cache | |
CN113515541A (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 |
Application publication date: 20210608 |
|
RJ01 | Rejection of invention patent application after publication |