B2B SaaS
每位客户的缓存和会话数据存放在共享集群上各自的前缀之下,由 ACL 隔离。
用一个集群服务众多客户,每个客户通过 ACL 被限制在自己的键内,并由租户登记表记录谁属于哪里。
随租户一起记录的 id、显示名称和配额值。
使用真实 HotKV 命令和示例回复的动画演示。点击任意步骤即可跳转。 命令和回复保持英文,与您在 HotKV 中输入和看到的完全一致。
为每位客户各运行一个缓存或数据存储,成本高、运维也痛苦,但共用一个就意味着客户之间需要强隔离,还需要记录哪些用户属于哪位客户。
带键模式的 ACL 用户把每个租户的应用限制在其自己的键前缀之内。租户登记表记录哪些用户属于哪个租户,以及配额值。登记表在集群的每个节点上都完全相同。
随租户一起记录的 id、显示名称和配额值。
TENANT.CREATE acme "Acme Corp" MAX_MEMORY 1073741824 MAX_KEYS 1000000该 ACL 用户只能访问 acme: 之下的键,并且不能执行危险命令。
ACL SETUSER acme-app on >s3cret ~acme:* +@all -@dangerous登记表记录哪些用户属于哪个租户。
TENANT.BIND acme acme-appacme 的应用读取自己的键。读取 globex 的键会被 ACL 拒绝。
GET globex:billing:plan为该租户记录的配额值。在当前版本中,用量计数器不会由客户端流量填充,因此显示为 0。
TENANT.STATS acme每位客户的缓存和会话数据存放在共享集群上各自的前缀之下,由 ACL 隔离。
客户项目就是拥有各自用户的租户,因此可以按客户授予和撤销访问权限。
ACL 用户被限制在一个键前缀和一组命令之内。
ACL SETUSER包含名称、状态、配额值和绑定用户的租户,在每个节点上都相同。
TENANT.CREATETENANT.BIND每个租户的名称、状态、配额值和绑定用户。
TENANT.INFOTENANT.STATS停用该租户的 ACL 用户。
ACL SETUSER off不会。它们会被记录并显示在 TENANT.STATS 中,但 HotKV 不会在命令上强制执行,而且在当前版本中用量计数器不会由客户端流量填充。隔离来自 ACL 规则。
TENANT.SUSPEND 只是为您的工具记录一个状态。要把租户的用户拒之门外,请用 ACL SETUSER 停用他们。
ACL 在所有套餐中均可使用。租户登记表包含在 Scale 套餐中。