gpt4 book ai didi

namespaces - 租户和命名空间之间的概念区别是什么

转载 作者:行者123 更新时间:2023-12-04 18:02:20 32 4
gpt4 key购买 nike

不久前,我在 Stormpath 的上下文中和之后在 Google Cloud Datastore 的上下文中遇到了租户术语。是什么让我对此感到疯狂,这就是为什么我们需要引入新术语来定义命名空间?或者我可能遗漏了一些描述命名空间没有的租户特定品质的东西?

虽然,在整个概念中,我仍然无法在这里获得 Multi-Tenancy 的概念? Multi-Tenancy 有什么意义?它看起来像多命名空间的东西,但具有相同的结构。

那么,这两个术语有什么区别呢?

最佳答案

在 Datastore 中,可以使用命名空间来创建 Multi-Tenancy 结构。

例子:

假设您想创建一个社交网络,如 Facebook,但要简化。您将拥有用户、帖子和评论。

实体

  • 用户
  • 帖子
  • 评论

  • 命名空间

    您可以将命名空间(用户 ID)分配给“帖子”,而不是将“帖子”实体声明为“用户”实体的子实体。

    在数据结构方面,似乎没有区别,但在性能方面,确实如此。当您将实体声明为父实体的子实体时,Datastore 需要将所有子实体存储在一起并确保该父实体中数据的一致性。为实体分配命名空间时,它可以分发数据,但不保证绝对一致性。

    这就是为什么 Datastore 在每个父级内限制为每秒 1 次写入(平均),但不在命名空间内施加写入限制。

    “一致性”是什么意思?

    在这个例子中,假设 Jack 现在发布了一个帖子。玛丽和约翰是他的 friend 。如果 Mary 和 John 在 Jack 发帖后立即访问 Jack 的帖子,是否 100% 保证他们都会看到这个新帖子?
  • 如果帖子是用户 (Jack) 的 child ,他们会的。
  • 如果帖子在用户 (Jack) 命名空间中,则在给定时间点可能不是真的;最终,双方都会看到帖子,但更改传播可能需要一些时间。
  • 关于namespaces - 租户和命名空间之间的概念区别是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43298798/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com