论-多租户技术

简介: 多租户技术(multi-tenancy technology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的业务不互相影响。

多租户技术(multi-tenancy technology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的业务不互相影响。

“我在南方的艳阳里大雪纷飞,你在北方的寒夜里四季如春。”又是一个供暖季,我这个来自北方的狼在杭州的深夜里被冻成了狗,只能靠抖动身体来缓解身体的冰冷。冬夜的深冷让我怀念起北方城市里的集中供暖。

集中供暖在经济学上可归为一种共享经济,大家统一向供暖公司采购暖气服务,因为规模经济的效益,显著降低了个体取暖成本。对于这一经济模式,若转为 IT 技术术语,那就是多租户技术。

多租户技术(multi-tenancy technology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的业务不互相影响。多租户技术源于 20 世纪 60 年代,早期主要是实现宝贵的计算资源的共享,后来逐渐衍生到软件服务。

近几年随着云计算技术的成熟,云计算多租户技术在 SAAS 服务领域更是取得较大的发展和应用。那么金融行业是否可以基于云计算资源,打造一个多租户业务平台呢?金融行业是一个特殊行业,金融 IT 系统相比其他行业的 IT 系统,具有很多独特的技术要求,比如系统的高可用性、数据安全的敏感性、业务操作的严格校验等。传统的金融 IT 系统多是自建模式,整个系统资源,从硬件服务器到应用软件都在金融机构自己手中。所以若要向金融机构提供云服务,则需要根据金融机构 IT 系统的特点,进行合理的多租户平台业务架构设计。


多租户业务平台首先要保证不同租户业务的隔离,业务隔离主要包含以下 2 个方面:

物理隔离,租户开展业务所依赖的所有计算资源完全独立;

逻辑隔离,通过技术手段,隔离租户业务流程和业务数据,一个租户只能访问自身数据。业务平台在设计时,需要能够根据客户需求提供不同形式的服务,即支持计算资源共享模式,也可支持计算资源独享模式。所以在业务设计时,从数据库表结构到服务请求,都需要加上租户标识。通过租户标识,解决了不同租户业务数据逻辑隔离的需求,那么对于租户独享计算资源模式,则通过为其部署单独的应用实例予以解决,业务平台通过统一的云公共管理模块进行多应用实例管理,从而解决大规模业务资源管理问题。多租户业务平台除了业务隔离外,另外一个重点就是能够根据客户业务需要提供弹性的计算资源。其途径有两种,一种是提升单位计算资源的配置,比如提升 CPU、内存、存储配置,另一种就是借助分布式系统架构设计,支持业务单元的横向扩展。在解决了上述 2 个基本问题后,我们再更深入地考虑如何设计一个多租户业务平台。想到多租户平台,大家可能首先想到淘宝,一个个卖家在淘宝上开店卖货。那么淘宝如何实现为多商家服务的呢?我们是否可以像淘宝一样搭建一个金融云多租户平台?其中又有哪些因为业务不同而需要特殊注意的呢?淘宝为了支持多卖家服务,主体需要构建如下业务模块:商户管理、商户销售员管理、商品管理、商品销售管理、平台运营管理、多租户技术(multi-tenancy technology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的业务不互相影响。


56自然人自然人平台转化用户 用户自然人平台操作员管理机构-租户合作方操作员授权租户操作员支持服务 支持服务(图-2:操作员之间的业务关系)产品-A 产品-B 产品A’ 产品-C(图-1:平台用户相互转化)平台运维管理。但在电商平台上,有一个突出特点,买家不属于任何一个卖家,买家属于淘宝平台,只有当交易发生时,才会发生买家、卖家的业务关联,买家与卖家的联系实际是通过商品实现的间接联系。但金融业务云平台因为业务主体是各类金融机构,业务用户属于租户,这一显著差异决定了金融云平台的业务架构不能完全照搬电商模式。首先我们看一下金融云平台业务主体,主要包括四类:平台提供商、租户(各类金融机构)、用户(金融机构服务的客户)、业务合作方(与金融机构合作的机构)。平台提供商为租户、业务合作方提供业务服务,租户为其客户提供服务。

对上述四类业务需求进行技术抽象,则可归类为:

对人的管理(用户和操作员):用户是租户的用户,同时也是平台服务的用户,通过平台整体服务的连接效应和业务运营,实现不同租户之间用户的相互转化,从而实现为用户提供更多的服务;操作员根据所属业务主体不同,分为平台操作员、租户操作员、合作方操作员。通过操作员的分类和角色划分,通过操作权限和数据权限的组合,实现操作员的灵活管理。

对机构的管理:根据业务角色不同,机构可分为平台服务商、业务租户和业务合作方。在某一业务中,一个机构是业务租户,但在另一个业务中,此机构有可能是一个业务合作方;通过机构和机构业务角色管理,实现对机构的多维护管理。

对业务的管理:一类业务对应一个产品,用户、操作员、机构各自分配相应的产品权限,通过人与业务的关联,实现多业务流程的整合和流转。从金融机构客户需求出发,采用合理的业务和技术设计,不断地探索和实践,相信在不远的将来,在金融 IT 系统领域,多租户云平台定会迎来蓬勃发展。

目录
相关文章
|
SQL 运维 监控
云平台-多租户技术设计
云平台-多租户技术设计
云平台-多租户技术设计
|
SQL Oracle 关系型数据库
使用JSqlParser 解析sql
使用JSqlParser 解析sql
3390 0
|
8月前
|
人工智能 自然语言处理 算法
蔚来汽车携手通义灵码入选 2025 世界人工智能大会标杆案例
在2025年世界人工智能大会上,通义灵码助力蔚来汽车提升研发效能,成功入选“人工智能+”行业标杆案例。蔚来已有近1000名工程师常态化使用该工具,AI生成代码占比超30%,在“天探”系统中更达70%,显著提升开发效率与代码质量,并正向更多核心领域扩展。
|
11月前
|
JSON 测试技术 API
大模型工程师基础之学会使用openai
本系列教程涵盖OpenAI API基础到高级应用,包括文本生成、图像处理、语音交互、会话管理、流式响应、文件输入、推理模型及性能评估等十大核心功能。适合新手入门与工程师实践,助您掌握大模型开发关键技术。从简单Prompt设计到复杂多模态任务,逐步深入,结合实例代码与最佳实践,提升实际开发能力。希望这些内容对您有帮助!
1260 11
|
存储 算法 固态存储
电脑格式化了还能恢复数据吗?
许多人在使用电脑时可能会误操作或出于需要对电脑硬盘进行格式化,格式化会迅速清空数据。问题是格式化后的数据还能恢复吗?答案是:在某些情况下,格式化后的数据是可以恢复的。不过,恢复的成功率取决于格式化的类型和后续的操作。接下来,将和大家讨论一下电脑格式化后数据能否恢复,并介绍几种恢复数据的方法。
|
Kubernetes Cloud Native 关系型数据库
k8s 部署polardb-x集群
k8s 部署polardb-x集群
1013 11
|
运维 Kubernetes 安全
评测文章:阿里云容器服务ACK
阿里云容器服务(Alibaba Cloud Container Service for Kubernetes,简称 ACK)是一个全托管的 Kubernetes 容器管理服务。它可以帮助企业在云上高效地部署、管理和扩展容器化应用。本文将详细评测 ACK 的功能、优势及其应用场景,帮助读者更好地理解和使用这一服务。
|
JavaScript 前端开发 安全
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印 1. 信息标识: 水印可以用于标识文档的所有者、保密级别、状态或其他相关信息,帮助用户更好地理解文档内容的属性。 2. 版权保护: 在文档中添加水印可以帮助保护内容的版权,防止他人未经授权地复制、转载或篡改内容。 3. 安全保护: 对于敏感信息或机密文档,添加水印可以帮助防止信息泄露,提高文档的安全性。 4. 提升专业性: 在一些场景下,如商业报告、合同文件等,添加水印可以增加文档的专业性和正式性。 5. 防止截屏或拷贝: 在网页中添加水印可以防止用户通过截屏或复制粘贴等方式非法获取文档内容。
552 1
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印
|
前端开发 Java 应用服务中间件
Spring MVC框架概述
Spring MVC 是一个基于Java的轻量级Web框架,采用MVC设计模型实现请求驱动的松耦合应用开发。框架包括DispatcherServlet、HandlerMapping、Handler、HandlerAdapter、ViewResolver核心组件。DispatcherServlet协调这些组件处理HTTP请求和响应,Controller处理业务逻辑,Model封装数据,View负责渲染。通过注解@Controller、@RequestMapping等简化开发,支持RESTful请求。Spring MVC具有清晰的角色分配、Spring框架集成、多种视图技术支持以及异常处理等优点。
380 1
|
存储 敏捷开发 安全
阿里云云原生 DevOps-云效平台六大产品(1)
阿里云云原生 DevOps-云效平台六大产品(1)
阿里云云原生 DevOps-云效平台六大产品(1)