有没有不是基于 spring cloud Java 这套技术栈的关于微服务的教程…
轻喷
如果你用 Spring Boot/Spring Cloud,请优先考虑 Spring Cloud K8s,尽量避免一些容器可以负责的跑到你的程序中去。
早期的 Spring Cloud 项目,更多的是 Netflix 的产品封装,现在基本都是歇菜了。对于容器时代,这些使用基本都是反模式,什么服务注册发现,LB 等,K8S 都是生来俱有的。Netflix 那一套把服务编排相关的工作移到应用程序中,增加程序开发的复杂度,测试麻烦(如果你写测试的话)。当然,Cloudfoudry 产品曾经将那些 Netflix 服务化(这也许是他们维护 Netflix 的原因),在 CF 云环境去使用,作为一种可点选的服务算得上一种路径吧,不过现在 CF 已经下课了,VMWare ( Spring 背后公司)转向了 K8S 。
国内很多教程还在围绕 Netflix 组件讲,完全过时了。之前一个长期项目,做过两个月的 POC 尝试,放弃几乎所有的 Spring Cloud 组件,除了:
1,Logging
2,Metrics
3, Open trace
其它的一概不用,所有编排的工作都到部署时由 K8S 负责。
到了其它的项目 Spring Boot,Spring Batch,Spring Integration 等,也还行。
再到了 Spring Cloud,Spring Cloud Stream, Spring Cloud Data Flow,Spring Data 等文档,不得不说的是质量非常一般,很多文档在版本升级更新不及时,版本对不上很常见。
整体上讲 Spring Cloud 文档不如 Quarkus, Helidon 实用。从实践方面,Quarkus 文档应该是最好的。
Learn Microservices using Kubernetes and Istio