程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略?

开发过程中遇到使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略的问题如何解决?下面主要结合日常开发的经验,给出你关于使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略的解决方法建议,希望对你解决使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略有所启发或帮助;

我正在使用 CQRS 方法重新设计 dotnet 后端 API。这个问题是关于如何在 Kubernetes 部署的上下文中处理 query 端。

我正在虑使用 MongoDb 作为查询数据库。该应用程序是 dotnet webAPI 应用程序。那么最好的方法是什么:

  1. 创建一个 sIDecar Pod,将 dotnet 应用程序和 MongoDb 容器化到一个 Pod 中。根据需要进行缩放。

  2. 将 MongoDb 容器化到它自己的 pod 中,并在每个区域部署一个 MongoDb pod。然后让 dotnet 容器在其自己的区域内使用 MongoDb pod。按区域缩放 MongoDb。以及区域内和区域之间需要的 dotnet pod。

  3. 其他一些我没有想到的方法

  4. @H_502_17@

    解决方法

    我会从最简单的方法开始,即将写入端和读取端放在一起,因为它们属于同一个有界上下文。

    那么以后如果需要的话,我会虑增加更多的读取端或扩展到其他区域。

    首先,我还会虑在与写入端相同的 VM 中添加读取端。只是为了保持简单,因为在生产中完成所有工作始终是一项艰巨的任务,有很多陷阱。

    我会虑使用类似 Kafka 的系统将数据传输到读取端,因为对于队列,如果您稍后添加一个新实例或者想要重建读取端实例,那么使用队列可能会很麻烦。在这里,发件人需要知道您拥有哪些读取面。通过 Kafka 风格的集成,每个“读取端”都可以按照自己的节奏使用事件。您还可以稍后更轻松地添加更多读取面。并且发送者不需要知道接收者。

    Kafka 允许您将数据的生产者与数据的消费者分离,就像从我的培训课程中拍摄的这张图片:

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

    在 kafka 中,您有一组生产者将数据附加到 Kafka 日志:

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

    然后您可以让一个或多个消费者处理此事件日志:

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

    @H_674_49@
    @H_674_49@

大佬总结

以上是大佬教程为你收集整理的使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略全部内容,希望文章能够帮你解决使用 CQRS 和 dotnet 和 MongoDb 的 Kubernetes 部署策略所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。