随着Python、Node.js等语言的快速发展,多语言微服务应用越来越多。EDAS能够通过服务网格支持部署多语言微服务应用,且提供应用托管和服务发现、链路追踪、负载均衡等服务治理能力。本文通过一个示例介绍如何使用EDAS部署多语言微服务应用。

背景信息

应用从最初的单体架构演变到目前的微服务架构,在带来便利的同时也大大增加了服务部署、运维的复杂度。而微服务本身可以是任意语言开发的,在部署多语言服务后,如何对多语言的微服务提供通用的链路追踪、服务发现、负载均衡等能力,一种做法是提供多语言的SDK,一种是服务网格。SDK对应用有侵入性,而服务网格在无侵入性的同时也能提供服务发现、负载均衡、链路追踪等能力,EDAS对多语言的支持正是采用的后者——服务网格。

服务网格是致力于解决服务间通讯的基础设施层。它负责在现代云原生应用程序的复杂服务拓扑中可靠地传递请求,通常是通过一组轻量级网络代理,与应用程序部署在一起来实现,而无需感知应用程序本身。

部署多语言应用

EDAS支持使用自定义镜像部署多语言应用至K8s集群。更多信息,请参见使用自定义镜像部署多语言应用至K8s集群