微服务架构怎么调试(公司开始采用微服务架构,研发团队应该做哪些相应的人员调整)

本文目录
公司开始采用微服务架构,研发团队应该做哪些相应的人员调整
题主你好,我是Ghostcloud的架构师,你这个问题可以参考一个定律——康威定律。
在开发微服务中康威定律起到了很大的作用。康威定律指出任何软件代码都是用来反映组织机构而产生的,如果要采用微服务的开发方法,就需要是把团队划分成多个小团队,由每个小团队负责一个或多个微服务。所以如果要转成DevOps和CI/CD的开发模式,就需要采用这种敏捷开发模式,一个团队7-8个人比较合适。
题主的公司一定是在用Docker相关的技术吧,按理说这三者现在都成铁三角了哈哈哈。
怎么将现有的系统实施微服务架构
在实施微服务架构改造之前,我们的产品线遇到一个很大挑战,就是需求的交付周期越来越短,采用的传统MVC单体架构越来越难满足特性快速交付和上线的需求。传统的电信项目,团队规模往往都非常大,甚至会跨地域。跨团队、跨地域的分布式协同开发,代码的重用和共享是个难题。
例如我们的支付功能需要新增一个限额保护, 短短十几行代码的一个小需求,评估之后竟然需要9个星期才能上线。原因就是限额保护功能需要同时在9个不同的功能模块中修改, 新增900多个测试用例用来做全量的回归测试,示例如下:
通过对已有的MVC单体架构进行分析,我们发现主要存在如下几个问题:
研发成本高:代码重复率高,需求变更困难,无法满足新业务快速上线和敏捷交付。
测试、部署成本高:业务运行在一个进程中,因此系统中任何程序的改变,都需要对整个系统重新测试并部署。
可伸缩性差:水平扩展只能基于整个系统进行扩展,无法针对某一个功能模块按需扩展。
可靠性差:某个应用BUG,例如死循环、OOM等,会导致整个进程宕机,影响其它合设的应用。
代码维护成本高:本地代码在不断的迭代和变更,最后形成了一个个垂直的功能孤岛,只有原来的开发者才理解接口调用关系和功能需求,新加入人员或者团队其它人员很难理解和维护这些代码。
依赖关系无法有效管理:服务间依赖关系变得错踪复杂,甚至分不清哪个应用要在哪个应用之前启动,架构师都不能完整的描述应用的架构关系。

更多文章:
diversity的定义(生物学上的多样性diversity与多态性polymorphisms有什么区别)
2026年9月22日 13:40
用html制作网站流程(html,制作电商网站的一般流程问题)
2026年9月22日 09:40
java程序结构(下列关于Java源程序结构的论述中,正确的是( ))
2026年9月22日 07:20
linux自带python(linux 怎样找到python解释器)
2026年9月22日 07:00
disheartened(disheartening 什么意思)
2026年9月22日 05:10
c语言print函数(C语言中printd函数代码含义是什么)
2026年9月22日 04:20
scanf函数被称为什么函数(scanf(“%d%d“,&a,&b)与scanf(“%d,%d“,&a,&b)的区别!!)
2026年9月22日 02:30
漂亮的滚动条样式(有谁能用CSS为IE做个这样的滚动条样式吗)
2026年9月22日 02:00



