假设我有一个微服务A,它有3个实例。类似地,对于微服务B,有5个B服务实例。
我将为微服务A和B创建单独的DB,这很好。但是,对于A或B的每个微服务实例,有必要具有单独的数据库实例吗?
我的意思是说,对于微服务A的3个实例,我需要有3个独立的db实例吗?或者A的所有实例都将指向一个db实例?哪种方法更好?
发布于 2021-04-16 02:55:00
这个问题很广泛,没有更好或最坏的方法,它完全取决于你的用例和用户负载。
从您的问题中,我了解到您需要派生单个微服务的单独实例,因此理想情况下,服务A的所有实例都应该能够访问相同的数据。您可以创建多主架构,在该架构中,您可以通过设置多主数据库将服务连接到每个副本。这篇文章向你提供了一个关于scale-out-blog的概述。然而,这样做会有很多影响,您需要仔细设计您的服务来实现这一点。
您还可以创建指向同一数据库的单独实例,在该实例中,您不需要关心复制和其他复杂问题。
https://stackoverflow.com/questions/67112109
复制相似问题