Skip to main content

多租户

多租户指一套系统能够支撑多个租户。一个租户通常是具有相似访问模式和权限的一组用户,典型的租户是同一个组织或者公司的若干用户。 要实现多租户,首先需要考虑的是数据层面的多租户。数据层的多租户模型对上层服务和应用的多租户实现有突出影响。本文重点介绍数据层多租户对各种多租户模型的支持。 权衡不同的多租户实现方式时,需要考虑如下因素:

  • 扩展性

    租户数量级别,以及未来发展趋势

  • 安全性

    租户之间数据隔离级别要求

  • 资源共享

    多租户通常有某种形式的资源共享,需要避免某个租户的糟糕SQL吃掉系统资源,影响其他租户的响应时间

  • 灵活性

    不同租户可能有不同的需求,对特定租户需求的扩展能力

  • 跨租户分析和优化

    对全部租户或者多个租户的数据和行为进行分析的能力

  • 运维和管理

    运维管理的复杂度和便宜性,包括监控、修改数据库模式、创建索引、收集统计数据、数据加载等

  • 成本

    总体拥有成本,包括方案实现成本、运维成本等。

    DG-IoT_RBAC.png