zoukankan      html  css  js  c++  java
  • 微服务之服务注册与发现

    还有谁?

    服务注册发现和负载均衡是微服务架构在技术上的根本问题,解决的办法是采用代理Proxy。
    根据代理在架构上的位置不同,服务发现代理一般有三种模式
    

    集中式代理

    • 定义:
    简单、传统,独立一层集中部署,由独立团队(一般是运维或框架)负责治理和运维。
    常用的集中式代理有硬件负载均衡器(如F5),软件负载均衡器(如Nginx),F5(4层负载)+Nginx(7层负载)
    
    • 缺点:
    相对比较重,有单点问题和性能问题
    
    • 拓展:
    可以和服务注册中心结合,降低手工配置的复杂性,实现DevOps研发自助部署。
    目前社区流行的开源代理如traefik和kong等都支持和服务注册中心(Consul/Eureka/Etcd/Zookeeper等)进行集成……
    

    客户端嵌入式

    • 定义:
    代理嵌入在应用程序中。一般需独立的服务注册中心组件配合,启动时自动注册到注册中心并定期报心跳,
    客户端代理则发现服务并做负载均衡。
    
    • 实例:
    Eureka
    
    • 缺点:
    客户端复杂,支持多语言困难,无法集中治理
    

    主机独立进程

    • 定义:
    两种模式的折中,作为独立进程部署在每台主机上,主机上的多个消费者共用这个代理,
    实现服务发现和负载均衡,一般也需要独立的服务注册中心组件配合。
    
    • 优点:
    弥补两者不足,纯分布式的,无单点问题,性能也OK,应用语言栈无关,可以集中治理。
    
    • 实例:
    ServiceMesh
    
    • 缺点:
    运维部署复杂
    
  • 相关阅读:
    linux下ssh端口的修改和登录
    linux找回密码
    XAMPP命令之LAMPP
    VirtualBox 复制vdi文件和修改vdi的uuid
    探讨PHP页面跳转几种实现技巧
    CSS盒模型和margin重叠
    8--数组旋转
    9--斐波那契数列
    7--动态规划
    6--树的遍历
  • 原文地址:https://www.cnblogs.com/duduchong/p/13300500.html
Copyright © 2011-2022 走看看