Spring Cloud Eureka

一、Spring Cloud Eureka简介

注册中心

Zk也是注册中心。

 Eureka是Netflix贡献给Spring Cloud的一个框架。Netflix给Spring Cloud 贡献了很多框架。

二、Spring Cloud Eureka和Zookeeper的区别

2.1分布式特征(CAP)

C:数据的一致性(A,B,C里面的数据是一致的)

Zk注重数据的一致性。

Eureka不是很注重数据的一致性。

A:服务的可用性(若ZK集群里面的master挂了怎么办)

在ZK里面,若主机挂了,则zk集群整体不对外提供服务了,需要选一个新的出来(120s)才能继续对外提供服务

Eureka注重服务的可用性,当Eureka集群中有一台活着,它就能对外提供服务。

P:分区的容错性(在集群里面的集群,因为网络原因,机房的原因,可能导致数据不会立马同步)

它在分布式必须需要实现的特性!

Zookeeper注重数据的一致性,CP

Eureka注重服务的可用性AP

2.2 Spring Cloud其他注册中心的选择

Eureka修改了授权协议,之前Eureka Apache2.0的协议,随便用,随便修改

后序的Eureka可能会使用其他授权协议。

Spring Cloud 还有别的注册中心,Consul,阿里巴巴提供Nacos,都能作为注册中心,我们的选择还是很多的。

Spring Cloud Consul

https://spring.io/projects/spring-cloud-consul

Nacos:http://console.nacos.io/nacos/index.html#/login

三、Spring Cloud Eureka快速入门

 3.1 搭建Eureka-Server

3.1.1 新建项目

 

3.1.2 选择依赖

Spring Cloud的版本

 通过依赖管理来控制Spring Cloud的依赖

3.1.3 修改配置文件

3.1.4 添加注解

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer //开启注册中心的功能
public class EurekaServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }

}

3.1.5 启动测试

启动测试

先不用管报错

 注册中心就搭建完毕了。

3.1.6 错误分析

Eureka-Server不仅提供让别人注册的功能,它也能注册到别人里面

上面的错误是因为Eureka-Server正在注册到一个别人的注册中心上面,此时往自己注册。

Eure可以配置向哪个注册中心注册自己,他有一个默认配置。

 

 

 

 观察源码发现,Eureka-server会向一个8761的端口注册自己,我们把我们自己搭建的Eureka-Server修改端口为8761

原文地址:https://www.cnblogs.com/LoganChen/p/12817482.html