每个服务的数据库



问题陈述

微服务架构将应用程序构建为一组松散耦合的微服务,并且每个服务都可以以敏捷方式独立开发,以实现持续的交付/部署。基于微服务的应用程序中,数据库结构/架构应该是什么。

解决方案

我们可以让每个微服务数据对该微服务保持私密,并且只能通过相关微服务访问这些数据。该微服务将使用自己的数据库进行事务处理。以下图表显示每个服务的数据库设计模式实现。

Database per Service Microservices Design Pattern

每个服务的数据库并不总是需要配置独立的数据库。我们可以考虑如下方式使用关系数据库来实现该模式。

  • 每个服务的私有表 - 每个微服务都可以使用一组表,并且这些表只能通过它们相关的微服务访问。

  • 每个服务的模式 - 每个微服务都可以定义一个独立的模式。

  • 每个服务的数据库服务器 - 每个微服务都可以配置完整的数据库服务器。

广告
© . All rights reserved.