基于dubbo体系、springcloud体系的微服务1.0技术已经非常成熟,但是在1.0架构下仍然存在,SDK对于业务侵入,业务逻辑需要大量引入SDK来实现注册、路由、跟踪等能力;多语言问题:多种编程语言,node.js, JAVA, GoLang…需要为每种语言都维护一种SDK;老应用难改造问题:老应用微服务改造成本高,无法享受微服务治理带来的优势;为解决上述问题基于sidecar方案的微服务2.0逐步走上舞台,通过mesh边车方案,实现服务注册及服务治理,业务代码与基础能力解耦,但以开源istio为主的sidecar方案目前还不是完全成熟,在稳定性、性能、扩展性方面还不能完全具备生成级的能力,该技术体系也在不断的完善中,我认为边车应该是未来的一种趋势,建议有基础的企业可以针对边车方案做深入研究,跟着社区一同发展。
针对还没有微服务基础,对开源研究不多的企业,且语言体系主要集中在java,可以从比较成熟微服务1.0的架构起步,学习成本和建设成本相对都会比较低。