华夏ERP的多租户技术其实就是可以多个企业一起共用同一套系统,然后超管就相当于运维管理员,每个公司相当于一个租户,租户的负责人可以分配自己的用户。这样的架构解决了重复部署多套系统的麻烦,后面的升级成本比较低,而且减少了服务器资源,一台服务器上面可以容纳很多的租户。
       那么华夏ERP是如何实现这个多租户功能的呢。这里面采用了mybatisplus的多租户技术,首先在每张表里面都加上租户id字段,然后每条sql语句运行的时候就被自动带上了租户id的条件,从而数据实现了逻辑隔离,也就是每家企业之间的数据是隔离的。
       多租户技术(英语:multi-tenancy technology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。
       多租户简单来说是指一个单独的实例可以为多个组织服务。多租户技术为共用的数据中心内如何以单一系统架构与服务提供多数客户端相同甚至可定制化的服务,并且仍然可以保障客户的数据隔离。一个支持多租户技术的系统需要在设计上对它的数据和配置进行虚拟分区,从而使系统的每个租户或称组织都能够使用一个单独的系统实例,并且每个租户都可以根据自己的需求对租用的系统实例进行个性化配置。
       多租户技术可以实现多个租户之间共享系统实例,同时又可以实现租户的系统实例的个性化定制。通过使用多租户技术可以保证系统共性的部分被共享,个性的部分被单独隔离。通过在多个租户之间的资源复用,运营管理维护资源,有效节省开发应用的成本。而且,在租户之间共享应用程序的单个实例,可以实现当应用程序升级时,所有租户可以同时升级。同时,因为多个租户共享一份系统的核心代码,因此当系统升级时,只需要升级相同的核心代码即可。

05-28 22:42