用阿里云的Swarm构建微服务系统

阿里云的Swarm产品,更方便地集成各种异构系统组成微服务集群。利用Docker技术,方便地部署、扩容。进一步简化程序的开发、运维。

对Swarm下的每一个应用,阿里云提供两种方式对外暴漏接口。

一是通过本地域名,将指定端口暴漏出去,域名必须以.local为结尾,一般我们以服务名+.local组成服务的域名。这个暴漏是负载均衡+健康检查的,因此可以代替服务发现。只要在调用方写死服务的域名即可,比如http://service.local。在本地调试的时候,通过改写Hosts,将域名指向本地测试的服务,很容易兼容。

二是通过阿里云本身的产品SLB,将某个端口通过SLB暴漏给外网,将服务发到公网上去。这个也是动态负载均衡的,我们只要在SLB上配置端口的侦听,而无需关心后端是哪几个服务节点。

无论何种系统,什么语言编写,都可以通过这种方式进入进入微服务集群。相当于给每个集群里面的应用,提供了一个Sidecar,这个Sidecar又集中起来进行了负载均衡、健康检查。对于基于不同语言开发的系统,非常方便。当然,即使用同一种语言和框架,用这个部署也很方便。我们原来用Spring Cloud,使用Eureka。只需要把Eureka去掉,然后把Feign的Interface增加服务的本地域名地址即可。

猜你喜欢

转载自www.cnblogs.com/bobdeng/p/9181479.html