确实是个比较困难的问题。个人建议是串行进行,一次只干一件事,这就要看重构升级的选择时机。找一个合适的时机进行重构升级,先暂停新需求,可监控、可灰度、可回滚,等完成升级后再接新需求。
不然在升级过程中接新需求,新旧两边都要兼容,而且也容易出错。
个人观点,欢迎讨论。
同意楼上沈老师的观点。架构不是闭门造车、无中生有、空中楼阁,脱离业务谈架构就是耍流氓。架构还是要围绕业务场景来设计,可适度扩展,但不能过度设计。
比如初创公司的小业务场景,研发人员不多,并发和性能要求也不太高,为了快速迭代试错,一般单体架构就能满足要求,简单有效成本也低。而等业务发展到一定程度才用去考虑微服务架构。
个人看法,欢迎讨论。