gpt4 book ai didi

github - 许多存储库已过时的微服务

转载 作者:行者123 更新时间:2023-12-05 01:46:45 25 4
gpt4 key购买 nike

在微服务架构中,使多个开发人员环境跨多个源代码存储库保持最新的最佳策略是什么?

假设有 10 个团队,每组 10 个开发人员在 git 中开发 200 个微服务。每个开发人员都需要定期从每个存储库中提取。这可以用脚本来完成,但是有更好的方法吗?我们是否做错了,因为这似乎是一个沉重的开销。

最佳答案

我不建议让每个开发人员构建每个微服务。我会建议某种持续集成环境。一个集中式构建服务器连接到所有的 git 仓库。

每次更新 repo 时,构建服务器都应检测更改、构建代码、运行单元(和/或功能)测试,然后将服务推送到某种集成环境。然后构建服务器还可以针对已部署的服务运行一些集成测试。

大多数开发人员应该能够在不需要访问其他微服务的情况下进行所有开发和测试。如果开发人员正在构建服务 X,它依赖于 Y 和 Z 并且被 A 和 B 所依赖,那么开发人员在大多数情况下应该只有服务 X。对于单元测试服务 Y 和 Z 应该被模拟/模拟。

挑战在于防止开发人员通过更改服务 X 来破坏服务 A 和 B。这种集成测试往往更棘手,因为开发服务 X 的开发人员通常不知道细节(甚至不知道细节)如何使用)上游服务(例如 A 和 B)。

我认为解决这个问题的方法是定期进行集成测试,要么由服务 X 的构建触发,要么定期运行。对于如此复杂的项目,强大而稳健的单元测试理念和集成测试框架将是必不可少的。

关于github - 许多存储库已过时的微服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33814080/

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