hantsy
2020-03-16 19:26:06 +08:00
大概 4,5 年前一个项目从 Dropwiard 移植到 Spring Boot 时,经历过两个月试用就放弃了使用 Spring Cloud 几乎所有的项目,除了日志采集外。那时 Spring CLoud 只有 Netflix 那一套,Netflix 系列性能太差了(后续的新版本 Spring Cloud 也没有跟进和更新,下一代 Spring Cloud 会删除 Netflix )。
容器 Service Discovery 才是正确的方向。
Load Balance, Service discovery and registration, Gateway,Fault tolerance 本来就是 Ops 范围的东西,开发时应该关注应该本身就好了。而全盘使用 Spring Cloud 的话,应用耦合运维的东西太多,会导致代码测试难度加大,另外启动和响应时间加长,从软件设计上也不符合 SOLID 理念的。
Spring Boot,Spring Cloud 对 Ops 比较有价值的项目,我觉得 Spring Boot 的 actuator, Spring Cloud sleuth/zipkin, 另外用于测试的 Spring Cloud Contract。