The invention discloses a multi-tenant implementation method and system under a micro-service architecture, which belongs to the field of network technology. The methods include: micro-service startup, acquiring its own tenant label, generating registration request containing tenant label and sending it to the registry; the registry labels micro-service according to the tenant label contained in the received registration request, and returning the successful registration sound. Microservices should be provided; when a microservice is invoked by a tenant, a service request containing its own tenant label is generated and sent to the registry; the registry finds the corresponding available microservices according to the tenant label contained in the service request, and returns the information of the available microservices to the microservice; the microservice invokes the available microservices according to the information of the available microservices. The method in the invention not only realizes the unified management of the micro services, but also realizes the isolation of the micro services among different tenants.
【技术实现步骤摘要】
一种微服务架构下多租户的实现方法及系统
本专利技术涉及互联网
,尤其涉及一种微服务架构下多租户的实现方法及系统。
技术介绍
随着互联网技术的飞速发展,越来越多的新名词在人们的耳边响起,例如:微服务,其是一个新兴的软件架构,即将一个大型的单个应用程序和服务拆分为数十个支持的微服务。每个微服务的策略是让工作变得更为简便,其可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。与微服务相关的就是注册中心,注册中心是微服务架构中的服务发现机制,每个微服务都要将自己注册到注册中心中,当服务相互进行访问的时候通过注册中心获取可用服务地址,然后进行调用。又如:系统变现,即企业将自身的系统以服务的形式提供给外部用户使用,并通过增值服务的方式实现内部系统的价值增长,举例如:百度地图服务为滴滴打车等第三方软件提供接口服务,从而收取一定的接口流量使用费。又如:多租户技术(multi-tenancytechnology),或称多重租赁技术,其是一种软件架构技术,是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。再如,SaaS:是软 ...
【技术保护点】
1.一种微服务架构下多租户的实现方法,其特征在于,包括:步骤S1:微服务启动,获取自身的租户标签,生成含有所述租户标签的注册请求,发送所述注册请求给注册中心;步骤S2:所述注册中心根据所述注册请求中含有的租户标签标注所述微服务,并返回注册成功响应给所述微服务;步骤S3:当微服务被租户调用时,生成含有所述租户标签的服务请求,发送所述服务请求给所述注册中心;步骤S4:所述注册中心根据所述服务请求中含有的租户标签查找对应的可用微服务,并返回所述可用微服务的信息给微服务;步骤S5:微服务根据所述可用微服务的信息调用可用微服务。
【技术特征摘要】
1.一种微服务架构下多租户的实现方法,其特征在于,包括:步骤S1:微服务启动,获取自身的租户标签,生成含有所述租户标签的注册请求,发送所述注册请求给注册中心;步骤S2:所述注册中心根据所述注册请求中含有的租户标签标注所述微服务,并返回注册成功响应给所述微服务;步骤S3:当微服务被租户调用时,生成含有所述租户标签的服务请求,发送所述服务请求给所述注册中心;步骤S4:所述注册中心根据所述服务请求中含有的租户标签查找对应的可用微服务,并返回所述可用微服务的信息给微服务;步骤S5:微服务根据所述可用微服务的信息调用可用微服务。2.根据权利要求1所述的方法,其特征在于,所述微服务部署给一个租户,或者共享给多个租户;所述步骤S1中,所述获取自身的租户标签,生成含有所述租户标签的注册请求,具体为:所述微服务在自身的配置文件中获取自身的一个或者多个租户标签,并生成含有所述一个或者多个租户标签的注册请求。3.根据权利要求1所述的方法,其特征在于,所述步骤S1中,所述生成含有所述租户标签的注册请求,具体为:所述微服务生成含有自身服务地址及所述租户标签的注册请求;所述步骤S2中,所述注册中心根据所述注册请求中含有的租户标签标注所述微服务,具体为:所述注册中心解析所述注册请求得到所述服务地址和租户标签,生成含有所述服务地址和租户标签的标注信息,并保存至微服务列表中。4.根据权利要求3所述的方法,其特征在于,所述步骤S4,具体为:所述注册中心根据所述服务请求中含有的租户标签,在所述微服务列表中查找含有所述租户标签的标注信息,将查找到的标注信息对应的微服务作为可用微服务,在查找到的标注信息中读取可用微服务的服务地址,生成服务地址列表,发送所述服务地址列表给微服务;所述步骤S5,具体为:所述微服务根据所述微服务地址列表中的服务地址调用对应的可用微服务。5.根据权利要求4所述的方法,其特征在于,所述可用地址列表中含有各可用地址的权重信息;所述步骤S5,具体为:微服务比对可用地址列表中各服务地址的权重信息,并调用权重大的服务地址对应的可用微服务。6.一种微服务架构下多租户的实现系统,其特征在于,包括:微服务和注册中心;所述微服务,包括:启动模块,用于启动微服务;第一获取模块,用于在所述启动模块启动微服务之后,获取微服务的租户标签;第一生成模块,用于生成含有所述第一获取模块获取的租户标签的注册请求;第一发送模块,用于发送所述第一生成模块生成的注册请求给注册中心;第一...
【专利技术属性】
技术研发人员:张磊,
申请(专利权)人:亿阳信通股份有限公司,
类型:发明
国别省市:黑龙江,23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。