|
我们组,3 个后端。一个项目需要一次需要部署 20 个微服务,其中一部分是功能,一部分是业务,一部分是基础服务。有的 java 写的,有的 python 写的,有 go 写的,我觉得挺好。做的都是本地部署的活,到一个地方使用 K8S 写好的脚本一键部署,不需要修改的服务稳定运行几年都不需要动它,只需要修改常用的几个服务。
而且不存在人员不解耦,我就没看过其他人写的工程,并不影响开发我的服务功能,多人之间对话只有"接口"。
"服务升级很难只升级一个",那说明你们架构师水平不行,接口兼容都整不明白。
"微服务有成本,首先代码量就先翻个倍", 代码量翻倍的结论从何而来?公共组件放 maven ,没有遇到过很多重复代码的问题,而且现在跨进程的框架越来越多,多服务开发和单服务开发体验本身就相差越来越小了。多服务开发甚至还有跨语言优势。
"微服务尝试解决什么问题?
保障多个 p0 服务不会一崩全崩。然而实际上大多数微服务就是一崩全崩。" 保障业务持续运行不是高可用范畴该考虑的吗,这是微服务要解决的问题?退一万步说,确实有很多微服务一崩全崩,那不也有很多微服务崩了并不影响其他服务的时候?单服务崩了那才是百分百一崩全崩。
多服务和单服务从来不是二极管,也不是因团队大小决定。根据合适的场景选择合适的技术才是正解。 |