目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

大数据全系列 教程

1869个小节阅读:465.1k

收藏
全部开发者教程

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(290)
赞(0)

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

常见服务发现框架 Consul、Eureka、 ZooKeeper、Etcd ,ZooKeeper是这种类型的项目中历史最悠久的之一,它起源于Hadoop。它非常成熟、可靠,被许多大公司(YouTube、eBay、雅虎等)使用。

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

  1. 服务注册:服务实现者可以通过HTTP API或DNS方式,将服务注册到Consul。
  2. 服务发现:服务消费者可以通过HTTP API或DNS方式,从Consul获取服务的IP和PORT。
  3. 故障检测:支持如TCP、HTTP等方式的健康检查机制,从而当服务有故障时自动摘除。
  4. K/V存储:使用K/V存储实现动态配置中心,其使用HTTP长轮询实现变更触发和配置更改。
  5. 多数据中心:支持多数据中心,可以按照数据中心注册和发现服务,即支持只消费本地机房服务,使用多数据中心集群还可以避免单数据中心的单点故障。
  6. Raft算法:Consul使用Raft算法实现集群数据一致性。

5.6.3 动态负载均衡实现方案

  1. Consul+Consul-template 每次发现配置更改需要raload nginx,重启Nginx。

  2. Consul+OpenResty 实现无需raload动态负载均衡 (lua语言,配置文件放字典里面,每隔时间读取)

  3. Consul+upsync+Nginx 实现无需raload动态负载均衡 (原理同上) 搭建ConsulServer专门存放负载均衡注册配置信息

    nginx间隔时间动态获取最新的ConsulServer配置信息

    img

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2