二、服务注册与发现

一、服务的注册与发现

服务的注册与发现

二、什么是Spring Cloud Eureka

什么是Spring Cloud Eureka
  • Eureka Server:系统中的其它微服务使用Eureka Client链接到Eureka Server,并维持心跳连接,这样就可以监测系统中各个微服务的信息
  • Eureka Client :简化与服务器的交互,作为轮询负载均衡器,并提供服务的故障切换支持

三、Eureka Server:注册中心:记录所有应用的状态和信息,比如应用叫什么名字,在哪台服务器上,目前是否正常工作。

3.1 新建项目

新建项目

项目中Maven依赖关系

官网的版本依赖图

3.2 添加注册中心功能

![ 添加注册中心功能



此时访问显示如上

解决报错问题

将注册中心也注册为一个组件

配置了注册中心的名字(即Application Name)

四、Eureka Client

4.1 为避免每次都到IDEA启动Eureka Server,可以到命令行以后台静默的方式启动Eureka Server

  • 进入项目的根目录:mvn clean package
  • 在target目录下找到jar包:ls -al target/
  • 通过java命令启动:java -jar target/eureka-0.0.1-SNAPSHOT.jar
  • 可以让程序在后台启动:nohup java -jar target/eureka-0.0.1-SNAPSHOT.jar>/dev/null 2>&1 &

4.2、服务注册

  • 新建项目


    新建项目
  • step2


    step2
  • step3


    step3
  • step4


    修改POM文件,依赖与Eureka Server保持一致
  • step5:应用注册


    应用注册

    EnableDicoveryClient
  • step6:配置ApplicationName


    ApplicationName

    此时的显示就如上

五、Eureka的高可用:只有一个server节点,防止server节点挂掉

Eureka的高可用
  • step1:打开Eureka工程


    复制

    复制一个

    配置第一个的端口

    配置第二个的端口
  • step2:两个节点互相注册


    将1注册到2(并启动)

    将2注册到1

    Client端并未作修改,还是注册到8761端口的server。虽然client只在Eureka1上注册,但是会把信息同步到Eureka2上去
  • step3:模拟第一个Eureka挂掉的情况,此时假如重启Eureka2会出现组件并未注册到Eureka的情况,为避免这种情况,将这个Client分别注册到两个Eureka。


    将当前的client分别注册到两个Server
  • step4:两个以上的Eureka互相注册的情况
    多个Eureka互相注册的情况,此时需要两两注册

    即Client注册所有的server,server与server之间两两注册,比如server2 注册1跟3,server3 注册1跟2即可

六、Eureka总结

总结

七、分布式系统中为什么需要服务发现

服务注册中心 是最重要的基础部分

服务端发现与客户端发现

客户端发现与服务端发现

7.1异构

异构

你可能感兴趣的:(二、服务注册与发现)