CN111611259B - 接口请求处理方法、装置、系统及计算机可读存储介质 - Google Patents

接口请求处理方法、装置、系统及计算机可读存储介质 Download PDF

Info

Publication number
CN111611259B
CN111611259B CN202010471077.2A CN202010471077A CN111611259B CN 111611259 B CN111611259 B CN 111611259B CN 202010471077 A CN202010471077 A CN 202010471077A CN 111611259 B CN111611259 B CN 111611259B
Authority
CN
China
Prior art keywords
remote database
configuration data
interface request
authority
server
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
CN202010471077.2A
Other languages
English (en)
Other versions
CN111611259A (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.)
Seashell Housing Beijing Technology Co Ltd
Original Assignee
Seashell Housing Beijing 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 Seashell Housing Beijing Technology Co Ltd filed Critical Seashell Housing Beijing Technology Co Ltd
Priority to CN202010471077.2A priority Critical patent/CN111611259B/zh
Publication of CN111611259A publication Critical patent/CN111611259A/zh
Application granted granted Critical
Publication of CN111611259B publication Critical patent/CN111611259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/16Real estate

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Abstract

本公开的实施例公开了一种接口请求处理方法、装置、系统及计算机可读存储介质。该方法应用于权限中心中的任一服务器,包括:将远程数据库中的配置数据存储至本地内存中;其中,远程数据库中还存储有对象与权限之间的映射关系;接收接口请求;在接口请求来自权限管理设备的情况下,接口请求用于请求更新远程数据库中的映射关系;在接口请求来自决策设备的情况下,接口请求用于请求查询远程数据库中的映射关系;利用本地内存中的配置数据,对接口请求进行校验,以得到校验结果;根据校验结果,确定是否响应接口请求。本公开的实施例既能够满足较高的接口性能要求,又能够提供高可用的接口服务,从而能够较好地适用于对接口性能的要求较高的场景。

Description

接口请求处理方法、装置、系统及计算机可读存储介质
技术领域
本公开涉及信息处理技术领域,尤其涉及一种接口请求处理方法、装置、系统及计算机可读存储介质。
背景技术
在许多情况下需要进行接口请求的处理,一般而言,在接口请求的处理过程中,需要先进行接口请求的校验,在校验通过的情况下再进行其他处理,而根据目前的实践经验,接口请求的校验效率往往较低,这样会导致接口请求的处理效率非常低,难以适用于对接口性能的要求较高的场景。
发明内容
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种接口请求处理方法、装置、系统及计算机可读存储介质。
根据本公开实施例的一个方面,提供了一种接口请求处理方法,应用于权限中心中的任一服务器,所述任一服务器的需求接口性能高于设定接口性能,所述方法包括:
将远程数据库中的配置数据存储至本地内存中;其中,所述远程数据库中还存储有对象与权限之间的映射关系,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的;
接收接口请求;其中,在所述接口请求来自权限管理设备的情况下,所述接口请求用于请求更新所述远程数据库中的映射关系;在所述接口请求来自决策设备的情况下,所述接口请求用于请求查询所述远程数据库中的映射关系;
利用所述本地内存中的配置数据,对所述接口请求进行校验,以得到校验结果;
根据所述校验结果,确定是否响应所述接口请求。
在一个可选示例中,
所述远程数据库中的映射关系中的对象包括房产经纪人;
所述远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
在一个可选示例中,所述将远程数据库中的配置数据存储至本地内存中之后,所述方法还包括:
判断是否接收到来自监测设备的更新通知消息;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新;
在接收到所述更新通知消息的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据。
在一个可选示例中,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新;
所述判断是否接收到来自监测设备的更新通知消息,包括:
判断是否接收到所述监测设备利用所述Zookeeper组件向所述权限中心中的各个服务器广播的更新通知消息。
在一个可选示例中,所述将远程数据库中的配置数据存储至本地内存中之后,所述方法还包括:
判断设定更新时刻是否到达;
在所述设定更新时刻到达的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据;
其中,所述设定更新时刻的数量为多个,任意相邻两个所述设定更新时刻之间的时间间隔为设定时长。
根据本公开实施例的另一个方面,提供了一种接口请求处理装置,应用于权限中心中的任一服务器,所述任一服务器的需求处理性能高于设定处理性能,所述装置包括:
存储模块,用于将远程数据库中的配置数据存储至本地内存中;其中,所述远程数据库中还存储有对象与权限之间的映射关系,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的;
接收模块,用于接收接口请求;其中,在所述接口请求来自权限管理设备的情况下,所述接口请求用于请求更新所述远程数据库中的映射关系;在所述接口请求来自决策设备的情况下,所述接口请求用于请求查询所述远程数据库中的映射关系;
校验模块,用于利用所述本地内存中的配置数据,对所述接口请求进行校验,以得到校验结果;
处理模块,用于根据所述校验结果,确定是否响应所述接口请求。
在一个可选示例中,
所述远程数据库中的映射关系中的对象包括房产经纪人;
所述远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
在一个可选示例中,所述装置还包括:
第一判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断是否接收到来自监测设备的更新通知消息;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新;
第一更新模块,用于在接收到所述更新通知消息的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据。
在一个可选示例中,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新;
所述第一判断模块,具体用于:
判断是否接收到所述监测设备利用所述Zookeeper组件向所述权限中心中的各个服务器广播的更新通知消息。
在一个可选示例中,所述装置还包括:
第二判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断设定更新时刻是否到达;
第二更新模块,用于在所述设定更新时刻到达的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据;
其中,所述设定更新时刻的数量为多个,任意相邻两个所述设定更新时刻之间的时间间隔为设定时长。
根据本公开实施例的再一个方面,提供了一种接口请求处理系统,包括:权限管理设备、决策设备和权限中心,所述权限中心包括至少一个服务器,所述权限管理设备与所述权限中心中的各个服务器连接,所述决策设备与所述权限中心中的各个服务器连接;
所述权限管理设备和所述决策设备用于发送指向所述权限中心的接口请求;其中,所述权限管理设备发送的接口请求用于请求更新远程数据库中的映射关系,所述决策设备发送的接口请求用于请求查询所述远程数据库中的映射关系,所述远程数据库中的映射关系为对象与权限之间的映射关系,所述远程数据库中还存储有配置数据,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的;
所述权限中心中的各个服务器用于将所述远程数据库中的配置数据存储至各自的本地内存中,所述权限中心中的各个服务器还用于在接收到来自所述权限管理设备或所述决策设备的接口请求的情况下,利用本地内存中的配置数据,对接收到的接口请求进行校验,以得到校验结果,并根据所述校验结果,确定是否响应所述接口请求。
在一个可选示例中,所述系统还包括:监测设备,所述监测设备与所述权限中心中的各个服务器连接;
所述监测设备用于监测所述远程数据库中的配置数据是否发生更新;
所述权限中心中的各个服务器还用于在接收到来自所述监测设备的更新通知消息的情况下,获取所述远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新。
在一个可选示例中,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新,并且,所述监测设备利用Zookeeper组件向所述权限中心中的各个服务器广播所述更新通知消息。
根据本公开实施例的再一个方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述接口请求处理方法。
根据本公开实施例的又一个方面,提供了一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述接口请求处理方法。
本公开的实施例中,可以将远程数据库中的配置数据存储至权限中心中的各个服务器各自的本地内存中。在权限中心中的任一服务器接收到来自权限管理设备的,用于请求更新远程数据库中的映射关系的接口请求,或者接收到来自决策设备的,用于请求查询远程数据库中的映射关系的接口请求的情况下,该服务器可以直接依据本地内存中的配置数据,对接收到的接口请求进行校验,并依据校验结果,确定是否响应接口请求,而无需通过多次网络传输从远程数据库中获取配置数据来进行接口请求的校验。这样,通过配置数据在本地内存中的存储,在对接口请求进行处理时,接口请求的校验需要花费的时间大大缩短,从而能够有效地提高对接口请求的处理效率,因此,与相关技术相比,本公开的实施例既能够满足较高的接口性能要求,又能够提供高可用的接口服务,从而能够较好地适用于对接口性能的要求较高的场景。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本公开一示例性实施例提供的接口请求处理方法的流程示意图。
图2是本公开一示例性实施例中本地内存中的配置数据的更新原理图。
图3是本公开一示例性实施例中权限中心中的服务器的架构图。
图4是本公开一示例性实施例提供的接口请求处理装置的结构示意图。
图5是本公开一示例性实施例提供的接口请求处理系统的结构示意图。
图6是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
示例性方法
本公开的实施例提供了一种接口请求处理方法,该方法应用于权限中心中的任一服务器,任一服务器的需求接口性能高于设定接口性能。
这里,权限中心中的服务器的数量可以为1个、2个、3个、4个或者4个以上,在此不再一一列举。为了便于理解,本公开的实施例中均以权限中心中的服务器的数量为1个以上的情况为例进行说明。
这里,任一服务器的需求接口性能高于设定接口性能可以是指:该服务器需要支持的每秒查询率(Queries-per-second,QPS)大于预设QPS,预设QPS可以为6000、8000或者10000等,在此不再一一列举。
图1是本公开一示例性实施例提供的接口请求处理方法的流程示意图。图1所示的方法包括步骤101、步骤102、步骤103和步骤104,下面对各步骤分别进行说明。
步骤101,将远程数据库中的配置数据存储至本地内存中;其中,远程数据库中还存储有对象与权限之间的映射关系,远程数据库中的配置数据是针对远程数据库中的映射关系配置的。
这里,远程数据库可以为Mysql(其是一种流行的关系型数据库管理系统)、远程字典服务(Remote Dictionary Server,Redis)等。
需要说明的是,一些设备(例如下文中的权限管理设备和决策设备)的正常工作过程需要访问远程数据库中的映射关系,为了避免非法设备也访问远程数据库中的映射关系,可以针对远程数据库中的映射关系,在远程数据库中进行配置数据的配置,远程数据库中的配置数据可以用于确定哪些设备能够合法访问远程数据库中的映射关系。
可选地,远程数据库中可以建立有多张表,远程数据库中的配置数据和映射关系可以位于不同表中。可选地,远程数据库可以部署于远程设备上,远程设备可以对远程数据库中的配置数据进行持久化存储,例如,远程数据库中的配置数据可以被持久化存储至远程设备的本地硬盘中。
可选地,远程数据库中的映射关系中的对象包括房产经纪人;
远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
这里,房产经纪人的房屋信息录入权限可以用于表征房产经纪人是否被允许在房屋服务平台上发布待交易房屋(例如待售房屋、待租房屋)的信息;房产经纪人的房屋带看权限可以用于表征房产经纪人是否被允许带客户实地看房;房产经纪人的房屋类型代理权限可以用于表征房产经纪人允许代理的房屋类型,房屋类型可以划分为新房类型、二手房类型等,或者,房屋类型可以划分为住宅类型、公寓类型、厂房类型等;房产经纪人的经纪人信息展位展示权限可以用于表征房产经纪人的经纪人信息是否被允许在房屋服务平台上的页面展位上展示。
当然,远程数据库中的映射关系中的对象和权限的类型并不局限于此,例如,映射关系中的对象可以为保险经纪人,相应地,映射关系中的权限可以为保险类型代理权限等。为了便于理解,本公开的实施例中均以映射关系中的对象为房产经纪人的情况为例进行说明。
在步骤101中,可以在程序首次启动的情况下,将远程数据库中的配置数据存储至本地内存(其也可以简称为内存)中。
步骤102,接收接口请求;其中,在接口请求来自权限管理设备的情况下,接口请求用于请求更新远程数据库中的映射关系;在接口请求来自决策设备的情况下,接口请求用于请求查询远程数据库中的映射关系。
需要说明的是,权限中心可以位于一接口请求处理系统中,接口请求处理系统除了包括权限中心之外,还可以包括权限管理设备和决策设备,权限管理设备可以与权限中心中的各个服务器连接,决策设备也可以与权限中心中的各个服务器连接。
这里,权限管理设备可以用于决定各房产经纪人具有何种权限,权限管理设备可以根据各房产经纪人的工作表现、业绩等改变各房产经纪人的权限,例如,在某一房产经纪人每个月的成交房屋数量大于第一预设数量的情况下,可以允许该房产经纪人的经纪人信息在房屋服务平台上的页面展位上展示;在某一房产经纪人每个月的成交房屋数量小于第二预设数量的情况下,可以禁止该房产经纪人的经纪人信息在房屋服务平台上的页面展位上展示;其中,第一预设数量大于第二预设数量。
这里,决策设备可以作为权限消费方,根据实际需求,消费各房产经纪人的权限。例如,在某一房产经纪人想要拿某一房屋的钥匙,以便带客户实地看该房屋的情况下,该房产经纪人可以在房屋服务平台上提出钥匙使用申请,决策设备可以接收到该申请,决策设备可以根据该房产经纪人是否被允许带客户实地看房,决定是否同意该房产经纪人的钥匙使用申请,当然,决策设备也可以依据各房产经纪人的权限做其他决策。
由于权限管理设备和决策设备具备上述功能,权限管理设备和决策设备可以根据实际需求,发送指向权限中心的接口请求;其中,在接口请求来自权限管理设备的情况下,接口请求可以用于请求更新远程数据库中的映射关系;在接口请求来自决策设备的情况下,接口请求可以用于请求查询远程数据库中的映射关系。之后,接口请求可以在经负载均衡后被分配至权限中心中的某一服务器。
步骤103,利用本地内存中的配置数据,对接口请求进行校验,以得到校验结果。
对于权限中心中的任一服务器,在接收到接口请求的情况下,可以利用本地内存中的配置数据,对接收到的接口请求进行校验,以得到校验结果。可选地,对接口请求进行校验可以分为两步,依次为验签和接口访问权限的验证,本地内存中的配置数据具体可以包括验签所需的数据、接口访问权限的验证所需的数据等。在验签和接口访问权限的验证均通过的情况下,可以得到用于表征对接口请求的校验通过的校验结果;否则,可以得到用于表征对接口请求的校验不通过的校验结果。
步骤104,根据校验结果,确定是否响应接口请求。
在校验结果表征对接口请求的校验通过的情况下,可以确定响应接口请求,具体地,可以同意接口请求,这样,在接口请求来自权限管理设备的情况下,可以按照接口请求,对远程数据库中的映射关系进行相应更新;在接口请求来自决策设备的情况下,可以允许决策设备查询远程数据库中的映射关系,以便决策设备能够根据查询到的映射关系中的权限做决策。在校验结果表征对接口请求的校验不通过的情况下,可以确定不响应接口请求,具体地,可以直接拒绝接口请求。
具体实施时,可以通过实验,比较采用本公开的实施例和采用相关技术时的接口性能的差别。通过实验可知,本公开的实施例中,通过将远程数据库中的配置数据存储至本地内存中,并利用本地内存中的配置数据进行接口请求的校验,在QPS为峰值(例如1000)的12倍的情况下,接口请求的平均响应时间在4ms左右;而相关技术中,通过直接利用远程数据库中的配置数据进行接口请求的校验,在QPS为峰值(例如1000)的8倍的情况下,接口请求的平均响应时间就已经达到了75ms左右。容易看出,本公开的实施例中的接口性能相比于相关技术中的接口性能显著提高。
本公开的实施例中,可以将远程数据库中的配置数据存储至权限中心中的各个服务器各自的本地内存中。在权限中心中的任一服务器接收到来自权限管理设备的,用于请求更新远程数据库中的映射关系的接口请求,或者接收到来自决策设备的,用于请求查询远程数据库中的映射关系的接口请求的情况下,该服务器可以直接依据本地内存中的配置数据,对接收到的接口请求进行校验,并依据校验结果,确定是否响应接口请求,而无需通过多次网络传输从远程数据库中获取配置数据来进行接口请求的校验。这样,通过配置数据在本地内存中的存储,在对接口请求进行处理时,接口请求的校验需要花费的时间大大缩短,从而能够有效地提高对接口请求的处理效率,因此,与相关技术相比,本公开的实施例既能够满足较高的接口性能要求,又能够提供高可用的接口服务,从而能够较好地适用于对接口性能的要求较高的场景。
在一个可选示例中,将远程数据库中的配置数据存储至本地内存中之后,该方法还包括:
判断是否接收到来自监测设备的更新通知消息;其中,更新通知消息用于表征远程数据库中的配置数据发生更新;
在接收到更新通知消息的情况下,获取远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据。
在一种具体实施方式中,监测设备利用Zookeeper组件监测远程数据库中的配置数据是否发生更新;
判断是否接收到来自监测设备的更新通知消息,包括:
判断是否接收到监测设备利用Zookeeper组件向权限中心中的各个服务器广播的更新通知消息。
需要说明的是,Zookeeper也可以简称为ZK,ZK具有watcher机制,那么,如图2所示,可以在监测设备上配置Zookeeper组件,并利用watcher机制,监测远程数据库中的配置数据是否发生更新。在监测结果为是的情况下,监测设备可以利用Zookeeper组件,向权限中心中的各个服务器广播更新通知消息,例如可以向图2中的server1、server2、server3这三个服务器广播更新通知消息。
对于权限中心中的任一服务器而言,可以在接收到更新通知消息的情况下,获取远程数据库中最新的配置数据,并将本地内存中的配置数据更新为所获取的配置数据,以使本地内存中的配置数据更新至最新的状态。需要指出的是,由于更新通知消息是以广播形式传输给权限中心中的各个服务器的,各个服务器可以自行进行配置数据的更新,这样无需逐一更改各个服务器的本地内存中的配置数据,从而能够保证配置数据的更新效率。
当然,监测设备也可以利用其他组件来实现监测和更新通知消息的广播,在此不再一一列举。
本公开的实施例,通过监测设备的设置,在远程数据库中的配置数据发生更新的情况下,权限中心中的各个服务器的本地内存中的配置数据也能够随之更新。
在一个可选示例中,将远程数据库中的配置数据存储至本地内存中之后,该方法还包括:
判断设定更新时刻是否到达;
在设定更新时刻到达的情况下,获取远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据;
其中,设定更新时刻的数量为多个,任意相邻两个设定更新时刻之间的时间间隔为设定时长。
这里,设定时长可以为3分钟、5分钟、6分钟等,在此不再一一列举。
本公开的实施例中,在某一时刻将远程数据库中的配置数据存储至本地内存中之后,可以将该时刻作为起点,每隔设定时长即可认为设定更新时刻达到,并将本地内存中的配置数据更新为远程数据库中当前配置数据,这样,通过定时更新的方式,本地内存中的配置数据能够保存在最新的状态。
可选地,上述实施例中基于监测设备进行本地内存中的配置数据的更新的方式可以与定时更新的方式进行结合,以减小对Zookeeper组件的依赖。
在一个可选示例中,权限中心中的各个服务器的构架可以如图3所示,具体可以包括网关层、业务层、协议层和数据层;其中,网关层可以用于接收接口请求;业务层可以用于基于Zookeeper组件和定时更新策略,更新本地内存中的配置数据。
本公开的实施例提供的任一种接口请求处理方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:终端设备和服务器等。或者,本公开实施例提供的任一种接口请求处理方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本公开实施例提及的任一种接口请求处理方法。下文不再赘述。
示例性装置
图4是本公开一示例性实施例提供的接口请求处理装置的结构示意图。图4所示的装置应用于权限中心中的任一服务器,任一服务器的需求处理性能高于设定处理性能,该装置包括存储模块401、接收模块402、校验模块403和处理模块404。
存储模块401,用于将远程数据库中的配置数据存储至本地内存中;其中,远程数据库中还存储有对象与权限之间的映射关系,远程数据库中的配置数据是针对远程数据库中的映射关系配置的;
接收模块402,用于接收接口请求;其中,在接口请求来自权限管理设备的情况下,接口请求用于请求更新远程数据库中的映射关系;在接口请求来自决策设备的情况下,接口请求用于请求查询远程数据库中的映射关系;
校验模块403,用于利用本地内存中的配置数据,对接口请求进行校验,以得到校验结果;
处理模块404,用于根据校验结果,确定是否响应接口请求。
在一个可选示例中,
远程数据库中的映射关系中的对象包括房产经纪人;
远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
在一个可选示例中,该装置还包括:
第一判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断是否接收到来自监测设备的更新通知消息;其中,更新通知消息用于表征远程数据库中的配置数据发生更新;
第一更新模块,用于在接收到更新通知消息的情况下,获取远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据。
在一个可选示例中,监测设备利用Zookeeper组件监测远程数据库中的配置数据是否发生更新;
第一判断模块,具体用于:
判断是否接收到监测设备利用Zookeeper组件向权限中心中的各个服务器广播的更新通知消息。
在一个可选示例中,该装置还包括:
第二判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断设定更新时刻是否到达;
第二更新模块,用于在设定更新时刻到达的情况下,获取远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据;
其中,设定更新时刻的数量为多个,任意相邻两个设定更新时刻之间的时间间隔为设定时长。
示例性系统
图5是本公开一示例性实施例提供的接口请求处理系统的结构示意图。图5所示的系统包括:权限管理设备51、决策设备52和权限中心53,权限中心53包括至少一个服务器531,权限管理设备51与权限中心53中的各个服务器531连接,决策设备52与权限中心53中的各个服务器531连接;
权限管理设备51和决策设备52用于发送指向权限中心53的接口请求;其中,权限管理设备51发送的接口请求用于请求更新远程数据库中的映射关系,决策设备52发送的接口请求用于请求查询远程数据库中的映射关系,远程数据库中的映射关系为对象与权限之间的映射关系,远程数据库中还存储有配置数据,远程数据库中的配置数据是针对远程数据库中的映射关系配置的;
权限中心53中的各个服务器531用于将远程数据库中的配置数据存储至各自的本地内存中,权限中心53中的各个服务器531还用于在接收到来自权限管理设备51或决策设备52的接口请求的情况下,利用本地内存中的配置数据,对接收到的接口请求进行校验,以得到校验结果,并根据校验结果,确定是否响应接口请求。
在一个可选示例中,该系统还包括:监测设备54,监测设备54与权限中心53中的各个服务器531连接;
监测设备54用于监测远程数据库中的配置数据是否发生更新;
权限中心53中的各个服务器531还用于在接收到来自监测设备54的更新通知消息的情况下,获取远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据;其中,更新通知消息用于表征远程数据库中的配置数据发生更新。
在一个可选示例中,监测设备54利用Zookeeper组件监测远程数据库中的配置数据是否发生更新,并且,监测设备54利用Zookeeper组件向权限中心53中的各个服务器531广播更新通知消息。
需要说明的是,本公开的实施例中涉及的连接均可以为通信连接。
示例性电子设备
下面,参考图6来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
图6图示了根据本公开实施例的电子设备60的框图。
如图6所示,电子设备60包括一个或多个处理器61和存储器62。
处理器61可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备60中的其他组件以执行期望的功能。
存储器62可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器61可以运行所述程序指令,以实现上文所述的本公开的各个实施例的接口请求处理方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备60还可以包括:输入装置63和输出装置64,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在电子设备60是第一设备或第二设备时,该输入装置63可以是麦克风或麦克风阵列。在电子设备60是单机设备时,该输入装置63可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。
此外,该输入装置63还可以包括例如键盘、鼠标等等。
该输出装置64可以向外部输出各种信息。该输出装置64可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出装置等等。
当然,为了简化,图6中仅示出了该电子设备60中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备60还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的接口请求处理方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的接口请求处理方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (15)

1.一种接口请求处理方法,其特征在于,应用于权限中心中的任一服务器,所述任一服务器的需求接口性能高于设定接口性能,所述任一服务器的需求接口性能为该服务器需要支持的每秒查询率,所述方法包括:
将远程数据库中的配置数据存储至本地内存中;其中,所述远程数据库中还存储有对象与权限之间的映射关系,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的,所述远程数据库中的映射关系中的对象包括经纪人,所述远程数据库中的映射关系中的权限包括经纪人类型相关的操作处理权限;
接收接口请求;其中,在所述接口请求来自权限管理设备的情况下,所述接口请求用于请求更新所述远程数据库中的映射关系;在所述接口请求来自决策设备的情况下,所述接口请求用于请求查询所述远程数据库中的映射关系;
利用所述本地内存中的配置数据,对所述接口请求进行校验,以得到校验结果;
根据所述校验结果,确定是否响应所述接口请求。
2.根据权利要求1所述的方法,其特征在于,
所述远程数据库中的映射关系中的对象包括房产经纪人;
所述远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
3.根据权利要求1所述的方法,其特征在于,所述将远程数据库中的配置数据存储至本地内存中之后,所述方法还包括:
判断是否接收到来自监测设备的更新通知消息;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新;
在接收到所述更新通知消息的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据。
4.根据权利要求3所述的方法,其特征在于,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新;
所述判断是否接收到来自监测设备的更新通知消息,包括:
判断是否接收到所述监测设备利用所述Zookeeper组件向所述权限中心中的各个服务器广播的更新通知消息。
5.根据权利要求1所述的方法,其特征在于,所述将远程数据库中的配置数据存储至本地内存中之后,所述方法还包括:
判断设定更新时刻是否到达;
在所述设定更新时刻到达的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据;
其中,所述设定更新时刻的数量为多个,任意相邻两个所述设定更新时刻之间的时间间隔为设定时长。
6.一种接口请求处理装置,其特征在于,应用于权限中心中的任一服务器,所述任一服务器的需求处理性能高于设定处理性能,所述任一服务器的需求接口性能为该服务器需要支持的每秒查询率,所述装置包括:
存储模块,用于将远程数据库中的配置数据存储至本地内存中;其中,所述远程数据库中还存储有对象与权限之间的映射关系,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的,所述远程数据库中的映射关系中的对象包括经纪人,所述远程数据库中的映射关系中的权限包括经纪人类型相关的操作处理权限;
接收模块,用于接收接口请求;其中,在所述接口请求来自权限管理设备的情况下,所述接口请求用于请求更新所述远程数据库中的映射关系;在所述接口请求来自决策设备的情况下,所述接口请求用于请求查询所述远程数据库中的映射关系;
校验模块,用于利用所述本地内存中的配置数据,对所述接口请求进行校验,以得到校验结果;
处理模块,用于根据所述校验结果,确定是否响应所述接口请求。
7.根据权利要求6所述的装置,其特征在于,
所述远程数据库中的映射关系中的对象包括房产经纪人;
所述远程数据库中的映射关系中的权限包括以下至少一项:房屋信息录入权限、房屋带看权限、房屋类型代理权限、经纪人信息展位展示权限。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断是否接收到来自监测设备的更新通知消息;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新;
第一更新模块,用于在接收到所述更新通知消息的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据。
9.根据权利要求8所述的装置,其特征在于,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新;
所述第一判断模块,具体用于:
判断是否接收到所述监测设备利用所述Zookeeper组件向所述权限中心中的各个服务器广播的更新通知消息。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于在将远程数据库中的配置数据存储至本地内存中之后,判断设定更新时刻是否到达;
第二更新模块,用于在所述设定更新时刻到达的情况下,获取所述远程数据库中的配置数据,并将所述本地内存中的配置数据更新为所获取的配置数据;
其中,所述设定更新时刻的数量为多个,任意相邻两个所述设定更新时刻之间的时间间隔为设定时长。
11.一种接口请求处理系统,其特征在于,包括:权限管理设备、决策设备和权限中心,所述权限中心包括至少一个服务器,所述权限管理设备与所述权限中心中的各个服务器连接,所述决策设备与所述权限中心中的各个服务器连接;
所述权限管理设备和所述决策设备用于发送指向所述权限中心的接口请求;其中,所述权限管理设备发送的接口请求用于请求更新远程数据库中的映射关系,所述决策设备发送的接口请求用于请求查询所述远程数据库中的映射关系,所述远程数据库中的映射关系为对象与权限之间的映射关系,所述远程数据库中还存储有配置数据,所述远程数据库中的配置数据是针对所述远程数据库中的映射关系配置的,所述远程数据库中的映射关系中的对象包括经纪人,所述远程数据库中的映射关系中的权限包括经纪人类型相关的操作处理权限;
所述权限中心中的各个服务器用于将所述远程数据库中的配置数据存储至各自的本地内存中,所述权限中心中的各个服务器还用于在接收到来自所述权限管理设备或所述决策设备的接口请求的情况下,利用本地内存中的配置数据,对接收到的接口请求进行校验,以得到校验结果,并根据所述校验结果,确定是否响应所述接口请求。
12.根据权利要求11所述的系统,其特征在于,所述系统还包括:监测设备,所述监测设备与所述权限中心中的各个服务器连接;
所述监测设备用于监测所述远程数据库中的配置数据是否发生更新;
所述权限中心中的各个服务器还用于在接收到来自所述监测设备的更新通知消息的情况下,获取所述远程数据库中的配置数据,并将本地内存中的配置数据更新为所获取的配置数据;其中,所述更新通知消息用于表征所述远程数据库中的配置数据发生更新。
13.根据权利要求12所述的系统,其特征在于,所述监测设备利用Zookeeper组件监测所述远程数据库中的配置数据是否发生更新,并且,所述监测设备利用Zookeeper组件向所述权限中心中的各个服务器广播所述更新通知消息。
14.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序用于执行上述权利要求1至5中任一项所述的接口请求处理方法。
15.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1至5中任一项所述的接口请求处理方法。
CN202010471077.2A 2020-05-28 2020-05-28 接口请求处理方法、装置、系统及计算机可读存储介质 Active CN111611259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010471077.2A CN111611259B (zh) 2020-05-28 2020-05-28 接口请求处理方法、装置、系统及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010471077.2A CN111611259B (zh) 2020-05-28 2020-05-28 接口请求处理方法、装置、系统及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN111611259A CN111611259A (zh) 2020-09-01
CN111611259B true CN111611259B (zh) 2021-07-20

Family

ID=72203708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010471077.2A Active CN111611259B (zh) 2020-05-28 2020-05-28 接口请求处理方法、装置、系统及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN111611259B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580188B (zh) * 2014-12-29 2017-11-07 中国科学院信息工程研究所 一种在虚拟化环境中保护根ca证书的方法与系统
CN108768948B (zh) * 2018-04-28 2021-04-16 努比亚技术有限公司 一种访问权限管理方法、服务器及计算机可读存储介质
CN109948356A (zh) * 2019-03-25 2019-06-28 江苏电力信息技术有限公司 一种基于微服务架构下服务调用权限控制方法
CN111078764B (zh) * 2019-10-31 2023-11-03 北京金堤科技有限公司 数据处理方法、装置、计算机可读存储介质及电子设备

Also Published As

Publication number Publication date
CN111611259A (zh) 2020-09-01

Similar Documents

Publication Publication Date Title
US10673866B2 (en) Cross-account role management
US10104037B2 (en) Method and system for network access request control
WO2019192103A1 (zh) 并发访问控制方法、装置、终端设备及介质
US20190245862A1 (en) Provisional computing resource policy evaluation
US10432551B1 (en) Network request throttling
CN111478910B (zh) 用户身份验证方法和装置、电子设备以及存储介质
US9571499B2 (en) Apparatus and method of providing security to cloud data to prevent unauthorized access
US20140215575A1 (en) Establishment of a trust index to enable connections from unknown devices
US8566914B2 (en) Triple authentication: mobile hardware, mobile user, and user account
US11405363B2 (en) File upload control for client-side applications in proxy solutions
CN106254528B (zh) 一种资源下载方法和缓存设备
CN113079164B (zh) 堡垒机资源的远程控制方法、装置、存储介质及终端设备
WO2021164459A1 (zh) 一种身份验证的方法、装置、计算机设备及可读存储介质
CN111611283A (zh) 数据缓存方法、装置、计算机可读存储介质及电子设备
CN114244624A (zh) 流量控制方法及装置、设备、存储介质
CN110599311A (zh) 资源处理方法、装置、电子设备及存储介质
US7849018B1 (en) Tracking download of an application component
US10887427B1 (en) System for automatic scaling to process requests
US8386775B2 (en) Tolerant key verification method
CN111611259B (zh) 接口请求处理方法、装置、系统及计算机可读存储介质
CN116305217A (zh) 多租户管理方法、装置、计算机设备及存储介质
CN115495770A (zh) 基于区块链的超期合约处理方法和装置、设备和介质
US20210044589A1 (en) Access control
CN113765766B (zh) 虚拟专用网络的会话控制方法、装置及设备
CN112968866B (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
TA01 Transfer of patent application right

Effective date of registration: 20201023

Address after: 100085 Floor 102-1, Building No. 35, West Second Banner Road, Haidian District, Beijing

Applicant after: Seashell Housing (Beijing) Technology Co.,Ltd.

Address before: 300 457 days Unit 5, Room 1, 112, Room 1, Office Building C, Nangang Industrial Zone, Binhai New Area Economic and Technological Development Zone, Tianjin

Applicant before: BEIKE TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant