用户作为微服务

Saq*_*qib 6 architecture microservices

我正在研究PAAS解决方案作为产品.我们在几个微服务中划分了业务流程.这些流程的核心部分与几乎所有的微服务密切相关.

这是一个很好的做法,创建一个单独的服务来管理用户管理等数据?实现后,只有此服务才能访问用户和其他相关的数据库表.所有其他服务都必须将这个新用户微服务称为用户相关任务.

这种方法将强制我们通过添加非规范化来重构数据库模式.我们不会得到在多个微服务中提供的基础表.如果多个服务需要数据,它将通过微服务共享.

lui*_*nal 5

我会说是的.

毕竟,通常用户凭证,授权身份验证被集中到一个逻辑单元(请注意,这个"逻辑单元"可能是单个服务器或具有统一接口的分布式解决方案.)

这通常包含用户配置文件管理.请注意,有时您还有一个单独的组件或单元.这完全可以成为一个单独的微服务.

为什么?因为管理用户配置文件与所有其他服务不同,包括身份验证和授权.

现在,如果这是一个物理部署点,那么这将是一个瓶颈.但是,如果这是一个分布式服务(即同一个微服务的多个实例,这是另一个讨论的主题),那么这个问题就会得到缓解.

即使在单片应用程序中(当写得很好时),您通常也会将用户身份验证和管理视为与其余部分分离的独立组件.

希望这可以帮助.