Microservices 微服务中的辅助索引/排序,实体详细信息驻留在另一个微服务中

Microservices 微服务中的辅助索引/排序,实体详细信息驻留在另一个微服务中,microservices,nosql,Microservices,Nosql,假设我们有两个微服务-一个管理/存储用户(ID和用户详细信息:姓名、电子邮件等),另一个管理/存储用户组(用户ID列表) 组没有任何限制,因此可能包含数百万个用户ID 现在,群组微服务的要求是获取群组中的用户(比如从位置0和页面大小10)按姓氏排序(或电子邮件、注册时间等) 那么,在微服务体系结构中通常是如何实现的呢 1) 是否在组存储中取消规范化并索引用户详细信息?听起来像是保持数据同步的主要痛苦。它是否也打破了整个概念 2) 将用户和组集中在一个微服务中?当涉及辅助索引时,这是一种通用方法吗

假设我们有两个微服务-一个管理/存储用户(ID和用户详细信息:姓名、电子邮件等),另一个管理/存储用户组(用户ID列表)

组没有任何限制,因此可能包含数百万个用户ID

现在,群组微服务的要求是获取群组中的用户(比如从位置0和页面大小10)按姓氏排序(或电子邮件、注册时间等)

那么,在微服务体系结构中通常是如何实现的呢

1) 是否在组存储中取消规范化并索引用户详细信息?听起来像是保持数据同步的主要痛苦。它是否也打破了整个概念


2) 将用户和组集中在一个微服务中?当涉及辅助索引时,这是一种通用方法吗?同样,它是否打破了分离关注点的概念?

这可能更多地是在programmers.stackexchange.com的主题中,您希望在“microservice”标签下出现什么样的问题?根据定义,架构问题不属于这里吗?我道歉。我只是觉得一个关于编程目标是如何实现的问题更接近于程序员SE成立的原因,因为你的问题没有描述你所遇到的具体问题。听起来你的问题并不真正涉及索引。它没有讨论搜索在数据库级别上是如何受到影响的。如果你想要一个体系结构的答案,索引可能会让人感到厌烦。那么,如果你想要的不是主键(用户id)排序的东西,它不是自动意味着需要某种二级索引吗?这可能更多地在programmers.stackexchange.com上讨论,你希望在“microservice”标签下出现什么样的问题?根据定义,架构问题不属于这里吗?我道歉。我只是觉得一个关于编程目标是如何实现的问题更接近于程序员SE成立的原因,因为你的问题没有描述你所遇到的具体问题。听起来你的问题并不真正涉及索引。它没有讨论搜索在数据库级别上是如何受到影响的。如果你想要一个体系结构的答案,索引可能会让人感到厌烦。如果你想要的不是主键(用户id)排序的东西,它不自动意味着需要某种辅助索引吗?