CN111478961B - 多租户的服务调用方法及装置 - Google Patents
多租户的服务调用方法及装置 Download PDFInfo
- Publication number
- CN111478961B CN111478961B CN202010260661.3A CN202010260661A CN111478961B CN 111478961 B CN111478961 B CN 111478961B CN 202010260661 A CN202010260661 A CN 202010260661A CN 111478961 B CN111478961 B CN 111478961B
- Authority
- CN
- China
- Prior art keywords
- tenant
- service
- parameters
- database
- identification 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
Links
Images
Classifications
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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/24—Querying
Abstract
本发明公开了一种多租户的服务调用方法及装置,其中,该方法包括:获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;根据租户标识信息,从数据库中查询该租户的业务参数;根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的服务需求实时更新;根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理,本发明可以提高多租户服务调用的可扩展性和灵活性。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种多租户的服务调用方法及装置。
背景技术
软件即服务(Software as a Service,SaaS)通常基于一套标准软件系统为成百上千的租户提供服务。由于SaaS同时支持多个租户,每个租户又有很多用户,这对支撑软件的基础设施平台的性能、稳定性和扩展性提出很大挑战。
现有的SaaS系统中,多个租户一般通过虚拟技术共享同一个应用实例,随着SaaS系统租户数目的不断增加,不同租户对同一应用实例有不同需求,在一个租户的需求更改时,会影响系统中其它的租户的使用,使得系统的可扩展性和灵活性较差,难以满足不同租户的需求。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种多租户的服务调用方法,用以提高多租户服务调用的灵活性,该方法包括:
获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;
根据租户标识信息,从数据库中查询该租户的业务参数;
根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的服务需求实时更新;
根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
本发明实施例提供了一种多租户的服务调用装置,用以提高多租户服务调用的灵活性,该装置包括:
标识信息确定模块,用于获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;
业务参数查询模块,用于根据租户标识信息,从数据库中查询该租户的业务参数;
服务配置与地址确定模块,用于根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的需求实时更新;
服务调用模块,用于根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述多租户的服务调用方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有执行上述多租户的服务调用方法的计算机程序。
本发明实施例通过:获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;根据租户标识信息,从数据库中查询该租户的业务参数;根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理,对于同一服务,本发明可以根据租户需求为不同的租户设置不同的服务配置参数和路由参数,并通过租户标识信息区分,在租户的服务需求更改时,可以直接修改服务配置库中对应的参数,提高了多租户服务调用的可扩展性和灵活性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中多租户的服务调用方法流程的示意图;
图2为本发明实施例中多租户的数据隔离模式示意图;
图3为本发明实施例中多租户的服务调用方法具体实施例的流程图;
图4为本发明实施例中多租户的服务调用装置结构的示意图;
图5为本发明实施例中多租户的服务调用装置另一结构的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有的SaaS系统中多个租户共用同一个应用实例,使得系统的可扩展性和灵活性较差的技术问题,本发明实施例提供了一种多租户的服务调用方法,用以提高多租户服务调用的灵活性,图1为本发明实施例中多租户的服务调用方法流程的示意图,如图1所示,该方法包括:
步骤101:获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;
步骤102:根据租户标识信息,从数据库中查询该租户的业务参数;
步骤103:根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的服务需求实时更新;
步骤104:根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
如图1所示,本发明实施例通过:获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;根据租户标识信息,从数据库中查询该租户的业务参数;根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理,对于同一服务,本发明可以根据租户需求为不同的租户设置不同的服务配置参数和路由参数,并通过租户标识信息区分,在租户的服务需求更改时,可以直接修改服务配置库中对应的参数,提高了多租户服务调用的可扩展性和灵活性。
具体实施时,步骤101中,多租户环境下,在接收到业务请求报文后,需要对不同租户的业务请求信息进行识别,判断不同租户的业务请求信息,可以通过租户标识信息区分不同的租户,租户标识信息可以包括:(1)业务请求域名,例如:租户1的业务请求域名为tenant1.ccb.com,租户2的业务请求域名为tenant2.ccb.com;(2)租户ID,可以将租户ID放置于业务请求URL参数或业务请求报文头中,通过读取业务请求URL或业务请求报文头中获得租户ID;(3)可以根据业务请求URL或业务请求报文中的参数信息,基于预设的转换规则,将参数信息转换为对应的租户信息,进行租户识别。此外,业务请求报文中还包括业务需要调用的服务,服务可以是一个或多个。
在一个实施例中,步骤102中的数据库可以包括:多个独立数据库和共享数据库;
其中,多个独立数据库包括:每个租户对应的一个数据库,用于存储单个租户的业务参数、服务配置参数和路由参数;
共享数据库包括:多个租户共用的一个数据库,用于存储多个租户的业务参数、服务配置参数和路由参数,其中包括每个租户对应的一个数据库表。
在一个实施例中,上述共享数据库中,通过租户标识信息区分不同租户对应的数据库表。
具体实施时,图2为本发明实施例中多租户的数据隔离模式示意图,如图2所示,图2中的模式一和模式二均为共享数据库,即多个租户共用的一个数据库,其中,模式二为每个租户对应的一个数据库表,可以通过数据库表名区分不同的租户,模式一为多个租户共用一个数据库表,可以通过租户的TenantID区分不同的租户,图2中的模式三和模式四均为独立数据库,每个租户对应的一个数据库,可以通过数据库名区分不同的租户,模式三中多个租户共用一个应用实例,而模式四中每个租户对应一个应用实例。在实际应用时,可以根据业务需求、开发成本、数据安全和生产运维等多个角度考虑,选择合适的数据库进行多租户的数据隔离,提高了数据库的可扩展性和灵活性。
具体实施时,步骤102在访问数据时可以包括如下操作:使用微服务框架,基于BasePo进行更新(UPDATE)、插入(INSERT)、查询(QUERY);数据库操作预处理前,微服务框架从业务内部数据交换区中获取业务请求对应的租户ID,并设置到相应Po对象的tenancyId属性中;数据库访问通过${tenancyId}取到租户ID,进行数据库相关操作。
通过数据库表名区分不同的租户的SQL语法示例如下:
<select id=”DemoPo-getByPk”
parameterType=”com.ccb.demo.data.po.DemoPo”
resultType=”com.ccb.demo.data.po.DemoPo”>
select
APPL_ID as applId,
AMT as amt
from
TABLENAME_${tenancyId}
where
USER_ID=#{userId}
</select>
通过租户的TenantID区分不同的租户的SQL的语法示例如下:
<insert id=”DemoPo-insert”
parameterType=”com.ccb.demo.data.po.DemoPo”
resultType=”com.ccb.demo.data.po.DemoPo”>
select
APPL_ID as applId,
AMT as amt
from
TABLENAME
where
USER_ID=#{userId}
AND
TENANCY_ID=#{tenancyId}
</insert>
在一个实施例中,步骤102根据租户标识信息,从数据库中查询该租户的业务参数,可以包括:
对用户标识信息进行校验,在校验通过时,从数据库中查询该租户的业务参数;
在校验未通过时,对该用户标识信息进行拦截和告警。
具体实施时,为了保证多租户数据的安全性和私密性,可以在数据访问中间件中增加租户ID校验,在校验通过后才可以从数据库中查询该租户的业务参数,对校验未通过或者没有带租户ID的SQL进行拦截、预警,还可以对跨租户的SQL操作设立白名单机制。
在一个实施例中,步骤103可以包括:在租户的服务需求更新时,基于租户标识信息,在数据库中更新该租户对应的服务配置参数和路由参数。
具体实施时,步骤103中,对于同一个服务,可以基于不同租户的服务需求,例如不同租户对服务界面、服务逻辑、服务数据结构等的个性化需求,为不同的租户设置不同的服务配置参数和路由参数并存储在租户对应的数据库或数据库表中,或者统一存储在服务注册中心,通过用户的标识信息进行区分,例如可以是图2的模式四中的每个租户对应一个应用实例,在租户的服务需求更新时,可以基于租户标识信息,在数据库或服务注册中心中更新该租户对应的服务配置参数和路由参数,这样可以使得每个租户的业务请求都在一个私有的、可定制化的应用实例上完成,外部业务请求可以被映射到对应的租户的应用实例中,实现租户数据上下文和租户组件的按需加载。
具体实施时,步骤103中,在收到业务请求报文后,可以根据业务需要调用的服务,基于租户标识信息,从数据库或服务注册中心中查询该租户对应的服务配置参数和路由参数,表1为租户的服务配置参数表,表2为租户的服务路由参数表。
表1租户的服务配置参数表
表2租户的服务路由参数表
在一个实施例中,在步骤103从数据库中查询该租户对应的服务配置参数和路由参数之后,该方法还包括:
步骤1031:根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户的服务调用权限;
步骤1032:在该租户有权调用业务需要调用的服务时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
具体实施时,步骤1031、步骤1032是为了确保多租户服务配置参数和路由参数的安全性和私密性,可以根据租户的实际情况提前在数据库中设置该租户的服务调用权限,在该租户有权调用服务时,才进行相应的业务处理,在该租户无权调用服务时,对该租户进行拦截和告警。
在一个实施例中,在步骤103从数据库中查询该租户对应的服务配置参数和路由参数之后,该方法还包括:
步骤1033:根据租户标识信息,从数据库中查询该租户的已用流量;
步骤1034:将该租户的已用流量与该租户的预设流量阈值进行比较;
步骤1035:在该租户的已用流量小于该租户的预设流量阈值时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至对应的服务中。
具体实施时,在进行了服务调用权限控制之后,还可以对多租户进行流量控制,可以将该租户的已用流量与该租户的预设流量阈值进行比较,其中,根据不同租户的实际情况,每个租户的预设流量阈值不同,在该租户的已用流量小于该租户的预设流量阈值时,才进行相应的业务处理,在该租户的已用流量大于或等于该租户的预设流量阈值时,对该租户进行拦截和流量预警提示。
具体实施时,步骤104中,可以根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理,并返回业务处理结果,多租户的业务请求接入和处理的流程可以包括:1)全局路由接收到业务请求报文后,识别租户信息,并将租户Id放于Http报文头c-tenancy-id属性中,服务端接收到业务请求报文后,解析Http报文头c-tenancy-id属性标识租户ID信息;2)将解析到的租户ID保存在业务处理线程上下文中;3)处理逻辑过程中,通过SwapAreaUtils.getTenancyId()方法获取业务请求中的租户ID,识别不同的租户ID,根据不同租户ID对应的服务配置参数和路由参数,调用不同的规则引擎和流程引擎进行个性化业务处理。
具体实施时,可以对多租户进行模板管理、数据管理、计费管理、状态管理等多种维度的管理,不同的租户可以设置不同的管理规则并通过租户标识信息区分,还可以通过日志记录各个租户的服务调用情况,服务调用情况可以包括:服务调用的类型、次数、时长、数据量等,并生成各个租户的服务调用流水,推送给对应的租户,还可以以租户为单位为不同的租户制定不同的收费规则,根据服务调用的功能类型、用户数量、时长、频次、数据量等参数设置计费策略,支持计费策略的灵活组合和改变。
下面举一个具体的例子,以便于理解本发明如何实施。
图3为本发明实施例中多租户的服务调用方法具体实施例的流程图,如图3所示,包括如下步骤:
第一步:全局路由通过API接收业务请求报文,基于业务请求域名或报文头识别租户信息,并确定业务需要调用的服务;
第二步:根据租户信息,对该租户进行租户ID校验,在校验通过后,从数据库中查询该租户的业务参数;
第三步:根据业务需要调用的服务,基于租户信息,从服务注册中心中查询该租户对应的服务配置参数和路由参数;
第四步:对该租户进行服务调用权限校验,在校验通过后进行第五步;
第五步:对该租户进行流量控制,在该租户的已用流量小于该租户的预设流量阈值时,进行第六步;
第六步:根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理,返回业务处理结果;
第七步:记录租户的服务调用情况,生成租户的服务调用流水,并推送给对应的租户。
基于同一发明构思,本发明实施例中还提供了一种多租户的服务调用装置,如下面的实施例。由于装置解决问题的原理与方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明实施例提供了一种多租户的服务调用装置,用以提高多租户服务调用的灵活性,图4为本发明实施例中多租户的服务调用装置结构的示意图,如图4所示,该装置包括:
标识信息确定模块01,用于获得业务请求报文,确定业务请求报文中的租户标识信息和业务需要调用的服务;
业务参数查询模块02,用于根据租户标识信息,从数据库中查询该租户的业务参数;
服务配置与路由确定模块03,用于根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的需求实时更新;
服务调用模块04,用于根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
图5为本发明实施例中多租户的服务调用装置另一结构的示意图,如图5所示,在一个实施例中,该装置还包括:服务调用权限校验模块05,用于:
在从数据库中查询该租户对应的服务配置参数和路由参数之后,根据业务需要调用的服务,基于租户标识信息,从数据库中查询该租户的服务调用权限;
在该租户有权调用业务需要调用的服务时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至业务需要调用的服务中,进行业务处理。
如图5所示,在一个实施例中,该装置还包括:流量控制模块06,用于:
在从数据库中查询该租户对应的服务配置参数和路由参数之后,根据租户标识信息,从数据库中查询该租户的已用流量;
将该租户的已用流量与该租户的预设流量阈值进行比较;
在该租户的已用流量小于该租户的预设流量阈值时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至对应的服务中。
如图5所示,在一个实施例中,该装置还包括:数据库07,包括:多个独立数据库和共享数据库;
其中,多个独立数据库包括:每个租户对应的一个数据库,用于存储单个租户的业务参数、服务配置参数和路由参数;
共享数据库包括:多个租户共用的一个数据库,用于存储多个租户的业务参数、服务配置参数和路由参数,其中包括每个租户对应的一个数据库表。
如图5所示,在一个实施例中,该装置还包括:更新模块08,用于在租户的服务需求更新时,基于租户标识信息,在数据库中更新该租户对应的服务配置参数和路由参数。
在一个实施例中,业务参数查询模块02具体用于::
对用户标识信息进行校验,在校验通过时,从数据库中查询该租户的业务参数;
在校验未通过时,对该用户标识信息进行拦截和告警。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述多租户的服务调用方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有执行上述多租户的服务调用方法的计算机程序。
综上所述,本发明实施例提供的多租户的服务调用方法方法及装置具有如下优点:
(1)对于同一服务,本发明可以根据租户需求为不同的租户设置不同的服务配置参数和路由参数,并通过租户标识信息区分,在租户的服务需求更改时,可以直接修改服务配置库中对应的参数,提高了多租户服务调用的可扩展性和灵活性。
(2)在服务调用过程中加入了租户ID校验、服务调用权限校验以及流量控制,提高了多租户在服务调用过程中数据和配置的安全性和私密性。
(3)采用四种多租户的数据隔离模式,可以根据业务需求、开发成本、数据安全和生产运维等多个角度,基于租户的需求灵活选择其中一种或多种模式进行数据存储,提高了数据存储的可扩展性和灵活性。
(4)可以在多租户的租户识别、服务配置、服务路由、数据存储等业务处理的全过程中实现多租户的可配置化定制,根据租户的需求灵活的进行多租户设计。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种多租户的服务调用方法,其特征在于,包括:
获得业务请求报文,确定所述业务请求报文中的租户标识信息和业务需要调用的服务;
根据所述租户标识信息,从数据库中查询该租户的业务参数;
根据所述业务需要调用的服务,基于所述租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的服务需求实时更新;
根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至所述业务需要调用的服务中,进行业务处理。
2.如权利要求1所述的方法,其特征在于,在从数据库中查询该租户对应的服务配置参数和路由参数之后,所述方法还包括:
根据所述业务需要调用的服务,基于所述租户标识信息,从数据库中查询该租户的服务调用权限;
在该租户有权调用所述业务需要调用的服务时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至所述业务需要调用的服务中,进行业务处理。
3.如权利要求1所述的方法,其特征在于,在从数据库中查询该租户对应的服务配置参数和路由参数之后,所述方法还包括:
根据所述租户标识信息,从数据库中查询该租户的已用流量;
将该租户的已用流量与该租户的预设流量阈值进行比较;
在该租户的已用流量小于该租户的预设流量阈值时,根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至对应的服务中。
4.如权利要求1所述的方法,其特征在于,所述数据库包括:多个独立数据库和共享数据库;
其中,所述多个独立数据库包括:每个租户对应的一个数据库,用于存储单个租户的业务参数、服务配置参数和路由参数;
所述共享数据库包括:多个租户共用的一个数据库,用于存储多个租户的业务参数、服务配置参数和路由参数,其中包括每个租户对应的一个数据库表。
5.如权利要求1所述的方法,其特征在于,还包括:
在租户的服务需求更新时,基于租户标识信息,在数据库中更新该租户对应的服务配置参数和路由参数。
6.如权利要求1所述的方法,其特征在于,根据所述租户标识信息,从数据库中查询该租户的业务参数,包括:
对所述租户标识信息进行校验,在校验通过时,从数据库中查询该租户的业务参数;
在校验未通过时,对该租户标识信息进行拦截和告警。
7.一种多租户的服务调用装置,其特征在于,包括:
标识信息确定模块,用于获得业务请求报文,确定所述业务请求报文中的租户标识信息和业务需要调用的服务;
业务参数查询模块,用于根据所述租户标识信息,从数据库中查询该租户的业务参数;
服务配置与地址确定模块,用于根据所述业务需要调用的服务,基于所述租户标识信息,从数据库中查询该租户对应的服务配置参数和路由参数;其中,每个租户的服务配置参数和路由参数根据该租户的需求实时更新;
服务调用模块,用于根据该租户对应的路由参数,将该租户对应的服务配置参数以及该租户的业务参数路由至所述业务需要调用的服务中,进行业务处理。
8.如权利要求7所述的装置,其特征在于,还包括:
更新模块,用于在租户的服务需求更新时,基于租户标识信息,在数据库中更新该租户对应的服务配置参数和路由参数。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至6任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010260661.3A CN111478961B (zh) | 2020-04-03 | 2020-04-03 | 多租户的服务调用方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010260661.3A CN111478961B (zh) | 2020-04-03 | 2020-04-03 | 多租户的服务调用方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111478961A CN111478961A (zh) | 2020-07-31 |
CN111478961B true CN111478961B (zh) | 2021-12-17 |
Family
ID=71750502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010260661.3A Active CN111478961B (zh) | 2020-04-03 | 2020-04-03 | 多租户的服务调用方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111478961B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112118565B (zh) * | 2020-08-14 | 2023-07-25 | 金蝶医疗软件科技有限公司 | 多租户服务灰度发布方法、装置、计算机设备和存储介质 |
CN112035213B (zh) * | 2020-08-28 | 2023-02-10 | 北京白龙马云行科技有限公司 | 多租户网约车系统及动态隔离方法 |
CN112199426B (zh) * | 2020-09-24 | 2023-06-02 | 建信金融科技有限责任公司 | 微服务架构下的接口调用管理方法、装置、服务器及介质 |
CN112416958A (zh) * | 2020-12-07 | 2021-02-26 | 恩亿科(北京)数据科技有限公司 | 实时qps控制方法、系统、计算机及计算机可读存储介质 |
CN112559076B (zh) * | 2020-12-21 | 2022-06-14 | 支付宝(杭州)信息技术有限公司 | 一种租户信息处理方法、装置、系统及设备 |
CN112596857A (zh) * | 2020-12-25 | 2021-04-02 | 北京知因智慧科技有限公司 | 一种SaaS多租户数据隔离的方法、装置、设备及介质 |
CN112905636A (zh) * | 2021-03-31 | 2021-06-04 | 浙江太美医疗科技股份有限公司 | 数据操作方法、服务器和计算机可读介质 |
CN113378026B (zh) * | 2021-06-30 | 2022-07-26 | 特赞(上海)信息科技有限公司 | 多租户体系中搜索引擎索引的管理方法、装置及电子设备 |
CN113377784B (zh) * | 2021-08-13 | 2021-12-03 | 成都市维思凡科技有限公司 | 一种基于中间件的数据处理方法、系统和存储介质 |
CN113612798A (zh) * | 2021-08-24 | 2021-11-05 | 京东科技控股股份有限公司 | 服务数据处理方法、装置、设备和介质 |
CN113810472A (zh) * | 2021-08-27 | 2021-12-17 | 阿里巴巴(中国)有限公司 | 请求处理方法、装置、电子设备和存储介质 |
CN113923130B (zh) * | 2021-09-06 | 2024-03-08 | 特赞(上海)信息科技有限公司 | 多租户的开放接口资源配置方法、装置、终端 |
CN114143324A (zh) * | 2021-10-27 | 2022-03-04 | 上海卓悠网络科技有限公司 | 一种基于应用市场架构的负载均衡方法及设备 |
CN116489245A (zh) * | 2022-01-17 | 2023-07-25 | 华为技术有限公司 | 一种报文发送方法、报文接收方法、信息发送方法及装置 |
CN114745443A (zh) * | 2022-05-09 | 2022-07-12 | 中国工商银行股份有限公司 | 服务调用方法、装置、计算机设备、存储介质和程序产品 |
CN116455951B (zh) * | 2023-06-19 | 2023-08-18 | 云筑信息科技(成都)有限公司 | 一种基于动态规则实现多租户服务rpc隔离的调用方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499061A (zh) * | 2008-01-30 | 2009-08-05 | 国际商业机器公司 | 面向多租户的数据库引擎及其数据访问方法 |
CN102340533A (zh) * | 2011-06-17 | 2012-02-01 | 中兴通讯股份有限公司 | 多租户系统及多租户系统存取数据的方法 |
CN108093026A (zh) * | 2017-11-17 | 2018-05-29 | 阿里巴巴集团控股有限公司 | 多租户请求的处理方法及装置 |
US10230709B1 (en) * | 2016-06-30 | 2019-03-12 | Juniper Networks, Inc. | Method, system, and apparatus for delegating control over the configuration of multi-tenant network devices |
CN110765489A (zh) * | 2019-10-30 | 2020-02-07 | 深圳前海环融联易信息科技服务有限公司 | 多租户数据库隔离方法、系统、电子设备及计算机存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924542B1 (en) * | 2011-05-31 | 2014-12-30 | Amazon Technologies, Inc. | Methods and apparatus for scalable private services |
US10992519B2 (en) * | 2018-03-26 | 2021-04-27 | Alien Vault, Inc. | Storage system for network information |
-
2020
- 2020-04-03 CN CN202010260661.3A patent/CN111478961B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499061A (zh) * | 2008-01-30 | 2009-08-05 | 国际商业机器公司 | 面向多租户的数据库引擎及其数据访问方法 |
CN102340533A (zh) * | 2011-06-17 | 2012-02-01 | 中兴通讯股份有限公司 | 多租户系统及多租户系统存取数据的方法 |
US10230709B1 (en) * | 2016-06-30 | 2019-03-12 | Juniper Networks, Inc. | Method, system, and apparatus for delegating control over the configuration of multi-tenant network devices |
CN108093026A (zh) * | 2017-11-17 | 2018-05-29 | 阿里巴巴集团控股有限公司 | 多租户请求的处理方法及装置 |
CN110765489A (zh) * | 2019-10-30 | 2020-02-07 | 深圳前海环融联易信息科技服务有限公司 | 多租户数据库隔离方法、系统、电子设备及计算机存储介质 |
Non-Patent Citations (2)
Title |
---|
《Blender: Upgrading tenant-based data center networking》;Kevin C. Webb;《 2014 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS)》;20170216;全文 * |
《支持多租户的多媒体联络中心配置管理系统的设计与实现》;赵瑶;《中国优秀硕士学位论文全文数据库-信息科技辑》;20190215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111478961A (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111478961B (zh) | 多租户的服务调用方法及装置 | |
CN112615849B (zh) | 微服务访问方法、装置、设备及存储介质 | |
EP2565802A1 (en) | Data masking setup | |
CN107077389A (zh) | 用于在多租户应用服务器环境中使用全局运行时的系统和方法 | |
CN107077388A (zh) | 用于在多租户应用服务器环境中提供端到端生命周期的系统和方法 | |
CN107196951A (zh) | 一种hdfs系统防火墙的实现方法和防火墙系统 | |
CN111506589B (zh) | 基于联盟链的区块链数据服务系统、访问方法及存储介质 | |
CN111835790B (zh) | 一种风险识别方法、装置及系统 | |
CN107133243A (zh) | 一种数据处理方法和服务器 | |
CN110427775A (zh) | 数据查询权限控制方法及装置 | |
CN104408118A (zh) | 数据库的创建方法和装置 | |
CN114357498A (zh) | 一种数据脱敏方法及装置 | |
WO2022206439A1 (zh) | 提供跨链消息的方法和装置 | |
CN115758459A (zh) | 数据权限管理方法及装置 | |
US10333939B2 (en) | System and method for authentication | |
CN110046181B (zh) | 基于数据库分布式存储的数据路由的方法和装置 | |
CN111831744B (zh) | Dapp的链上数据检索系统、方法及介质 | |
CN106294530A (zh) | 规则匹配的方法和系统 | |
CN107193821B (zh) | 监控方法和系统 | |
CN111737351A (zh) | 分布式管理系统事务管理方法及装置 | |
CN110058995A (zh) | 一种可避免数据库类型的干扰的数据库测试方法以及系统 | |
CN115033590A (zh) | 一种多域数据融合的方法、装置和存储介质 | |
CN114116679A (zh) | 一种多数据库环境运维方法及系统 | |
CN113515387A (zh) | 数据处理方法、装置及电子装置 | |
CN111723401A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220927 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Patentee after: CHINA CONSTRUCTION BANK Corp. Address before: 25 Financial Street, Xicheng District, Beijing 100033 Patentee before: CHINA CONSTRUCTION BANK Corp. Patentee before: Jianxin Financial Science and Technology Co.,Ltd. |
|
TR01 | Transfer of patent right |