gpt4 book ai didi

mongodb - 使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略

转载 作者:行者123 更新时间:2023-12-04 11:39:27 26 4
gpt4 key购买 nike

我正在使用 CQRS 方法重新设计一个 dotnet 后端 api。这个问题是关于如何在 Kubernetes 部署的上下文中处理 Query 端。
我正在考虑使用 MongoDb 作为查询数据库。该应用程序是 dotnet webapi 应用程序。那么最好的方法是什么:

  • 创建一个 sidecar Pod,它将 dotnet 应用程序和 MongoDb 容器化到一个 Pod 中。根据需要进行缩放。
  • 将 MongoDb 容器化到它自己的 pod 中,并在每个区域部署一个 MongoDb pod。然后让 dotnet 容器在其自己的区域内使用 MongoDb pod。按区域缩放 MongoDb。以及区域内和区域之间需要的 dotnet pod。
  • 我还没有想到的其他一些方法
  • 最佳答案

    我将从最简单的方法开始,即将写入和读取端放在一起,因为它们属于同一个有界上下文。
    以后如果需要的话,我会考虑增加更多的读取端或扩展到其他区域。
    首先,我还会考虑在与写入端相同的 VM 中添加 ReadSide。只是为了保持简单,因为在生产中完成所有工作始终是一项艰巨的任务,有很多陷阱。
    我会考虑使用类似 Kafka 的系统将数据传输到读取端,因为对于队列,如果您稍后添加新实例或者想要重建读取端实例,那么使用队列可能会很麻烦。在这里,发件人需要知道您拥有哪些读取面。通过 Kafka 风格的集成,每个“读取端”都可以按照自己的节奏使用事件。稍后您还可以更轻松地添加更多读取面。并且发送者不需要知道接收者。
    Kafka 允许您将数据的生产者与数据的消费者分离,就像从我的培训类(class)中拍摄的这张图片:
    enter image description here
    在 kafka 中,您有一组生产者将数据附加到 Kafka 日志:
    enter image description here
    然后你可以让一个或多个消费者处理这个事件日志:
    enter image description here

    关于mongodb - 使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68024915/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com