zoukankan      html  css  js  c++  java
  • 微服务-SpringCloud学习系列(二):注册中心Eureka

    学习微服务首先要学习的组件就是注册中心。

    1.为什么需要注册中心

    我们知道微服务是将传统的单体架构的业务模块拆分为一个个独立的分布式服务。

    不同服务之间我们可以通过UrlConnection,HttpClient,OKhttp等技术进行调用,我们通常会使用Spring提供的RestTemplate进行http通信。

    这样不同服务之间可以相互调用传递数据,这样一个低配版的微服务已经可以运行了。

    但是还存在一个问题:服务消费者对于服务提供者的url耦合过于严重(例如如果服务过多,服务提供者的地址变动,维护成本过高)。

    为了解决这个问题,微服务中引入了注册中心,注册中心可以简单的理解为微服务中的通信录,维护服务的地址。

    通常注册中心有三个重要功能:服务注册和发现,服务配置(对于服务信息变更时,需要将旧的信息配置为最新的信息),健康检查。

    常用的微服务注册中心有Eureka,Zookeeper,consul,Nacos等,通常我们选择注册中心就是考量实际业务和注册中心对于CAP的支持情况。

    2.Eureka简单学习

     使用Eureka的步骤:

    ①搭建EurekaServer:

    创建工程,添加EurekaServer依赖,添加配置application.yml,配置启动类

     ②将服务提供者注册到EurekaServer(服务提供者是EurekaClient)

    添加EurekaClient依赖,在application.yml中添加EurekaServer信息,在启动类配置服务发现

     使用@EnableEurekaClient或者@EnableDiscoveryClient注解支持服务发现。

    ③服务消费者从注册中心获取服务列表并调用服务

    通过Eureka的元数据获取服务信息,SpringCloud提供的DisCoveryClient.getInstance(service-name)获取List<ServiceInstance>。通过ServiceInstance提供的元数据获取url和port来解耦调用服务提供者。

    3.Eureka的高可用

     ①多个EurekaServer之间相互注册

       

     ②把微服务注册到每一个EurekaServer

     4.Eureka的自我保护配置

     5.Springboot自动装配

    6.EurekaServer的执行流程

    7.总结

    通过黑马程序员的课程学习Eureka的配置,使用方式及Springboot的自动装配原理。

  • 相关阅读:
    程序打包(通过VS2015插件 InstallShield2015 Limited Edition 方式)
    QSS单独设置四个边角
    Qt 设置窗口圆角
    Qt实现鼠标拖动窗口
    关于split切割的几种情况
    java开发过程中,报错Dangling meta character '*' near index 0,解决办法
    关于ArrayList的contains方法
    WPS文档按回车键不能换行怎么解决
    正则表达式截取数字
    如何用hibernate中查询出一个表数量总数
  • 原文地址:https://www.cnblogs.com/masting/p/12823541.html
Copyright © 2011-2022 走看看