我可以将 couchbase 用于令牌生成和验证系统吗

Could i use couchbase for token generation and validation systems

我正在设计一个大容量服务,它本质上是一个令牌创建和验证服务。今天我们使用基于 SQL 的数据库,这些数据库无法快速扩展,我们正在寻找的替代方案是 Couchbase 服务器 (memcached)。但是,用例是将此服务生成的令牌发送到将使用令牌进行身份验证的其他服务。如果复制速度不够快,则身份验证失败。是否有更简单的方法可以通过代码或任何其他替代方法来实现这一点,我们也欢迎。在我们看来,这似乎是一个 "read-your-own-write" 用例。

我认为您可能误解了复制在 Couchbase 中的作用。 Couchbase 对于标准数据操作是高度一致的。如果你写了一个文档或 key/value 对,你可以立即读取那个对象。无需等待复制。您所说的用例是 Couchbase 非常常见的用例。

出于显而易见的原因,在 Couchbase 中唯一最终保持一致的是 XDCR 和从视图中读取。即使那样,也可以通过适当的集群大小来最小化。

目前 XDCR 没有一致性 API。它可能在开发路线图的某个位置,因为它是普遍要求的功能之一。

如果你想获得跨数据中心的 RYOW 一致性,我们唯一的选择是从应用程序代码同时写入所有 DC。当然,它不是原子的,但您可以通过在继续之前等待所有集群确认写入来稍微解决这个问题。