06蚂蚁-高性能Nginx服务器——4.基于Consul+Upsync+Nginx实现动态负载均衡

姬温文
2023-12-01

Http动态负载均衡

什么是动态负载均衡

传统的负载均衡,如果Upstream参数发生变化,每次都需要重新加载nginx.conf文件,
因此扩展性不是很高,所以我们可以采用动态负载均衡,实现Upstream可配置化、动态化,无需人工重新加载nginx.conf。
这类似分布式的配置中心

动态负载均衡实现方案

1.Consul+Consul-template
每次发现配置更改需要raload nginx,重启Nginx。
2.Consul+OpenResty 实现无需raload动态负载均衡
3.Consul+upsync+Nginx 实现无需raload动态负载均衡

常用服务器注册与发现框架

常见服务发现框架 Consul、Eureka、 ZooKeeper以及Etcd ZooKeeper是这种类型的项目中历史最悠久的之一,它起源于Hadoop。它非常成熟、可靠,被许多大公司(YouTube、eBay、雅虎等)使用。
etcd是一个采用HTTP协议的健/值对存储系统,它是一个分布式和功能层次配置系统,可用于构建服务发现系统。其很容易部署、安装和使用,提供了可靠的数据持久化特性。它是安全的并且文档也十分齐全。

Consul快速入门

Consul是一款开源的分布式服务注册与发现系统,通过HTTP API可以使得服务注册、发现实现起来非常简单,它支持如下特性。

服务注册:服务实现者可以通过HTTP API或DNS方式,将服务注册到Consul。
服务发现:服务消费者可以通

 类似资料: