转载

Spring Cloud 与 Service Mesh,如何选择?

导读

Spring Cloud基于Spring Boot开发,提供一套完整的微服务解决方案,具体包括服务注册与发现,配置中心,全链路监控,API网关,熔断器,远程调用框架,工具客户端等选项中立的开源组件,并且可以根据需求对部分组件进行扩展和替换。

Service Mesh,这里以Istio(目前Service Mesh具体落地实现的一种,且呼声最高)为例简要说明其功能。 Istio 有助于降低这些部署的复杂性,并减轻开发团队的压力。它是一个完全开源的服务网格,可以透明地分层到现有的分布式应用程序上。它也是一个平台,包括允许它集成到任何日志记录平台、遥测或策略系统的 API。Istio的多样化功能集使你能够成功高效地运行分布式微服务架构,并提供保护、连接和监控微服务的统一方法。

Service Mesh 的优势

与 Spring Cloud 功能重叠

服务容器化

术业有专攻

语言壁垒

选择和迁移

全新的项目

如果是小型项目,轻业务、重流量、需求快速变化,可以参考我之前写的文章 轻量型互联网应用架构方式 ,语言层面选择 Node.js + Mongodb/Mysql.

如果项目属于业务复杂类型,语言层面可以选择 Java with Kotlin。

当然,全新项目,容器化是必须的。

渐进式, 先 k8s 后 Service Mesh

Service Mesh 一步到位的落地时间可能稍长,建议先把项目服务容器话,在 k8s 上部署起来,此时已经能够享受 k8s 带来的一部分服务治理能力了。例如:

服务发现

负载均衡

API 网关

TODO

Spring Cloud 项目的迁移

其他语言项目的迁移

原文  http://myfjdthink.com/2019/11/15/spring-cloud-与-service-mesh,如何选择?/
正文到此结束
Loading...