一、简介

微服务架构当中,最总要的就是服务的提供者和消费者。消费者消费提供者提供的服务,但是消费者不应该直接调用提供者的服务,因为这样的话,各个子系统之间的耦合性太强,监控,容灾,负载均衡这些功能实现起来就很困难。所以需要引入注册中心的概念,服务提供者把自己提供的服务注册到注册中心,服务消费者到注册中心查询自己需要的服务,然后调用对应服务,示意图如下:
springcloud zookeeper注册中心原理 springcloud注册过程_Server

二、创建注册中心

这里注册中心采用Eureka,创建过程如下:

  1. 打开Spring Boot的项目骨架构建页面 http://start.spring.io,如图:
    springcloud zookeeper注册中心原理 springcloud注册过程_Eureka_02

  2. 填写项目信息:选择项目构建工具,语言和Spring Boot版本,在Group中填写自己项目组的名称,Artifact中填写项目名称,最后在Dependencies中填写Eureka Server,下图是我填写的信息:
    springcloud zookeeper注册中心原理 springcloud注册过程_Server_03

  3. 点击Generate Project按钮,将生成的项目下载到本地,然后解压导入到IDEA或者Eclipse中即可。
    以上是注册中心项目的创建步骤,如果使用的是IDEA,这三步也可以全在IDEA中完成。

  4. 打开pom.xml文件 ,可以看到Eureka Server的依赖:

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
    </dependency>

    接下来修改application.properties文件。首先将后缀名改为yml(个人喜好,也可以不改,只要配置文件格式正确即可)。然后在该文件中填写配置信息:

    server:
      port: 8000
    
    eureka:
      instance:
        hostname: localhost
      client:
        registerWithEureka: false
        fetchRegistry: false
        serviceUrl:
          defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
  5. EruekaServerApplication启动类加上@EnableEurekaServer注解,如图:
    springcloud zookeeper注册中心原理 springcloud注册过程_spring_04
  6. 启动项目。然后在浏览器地址栏打开http://localhost:8000即可看到注册中心的基本信息,如图:
    springcloud zookeeper注册中心原理 springcloud注册过程_Spring Cloud_05
    至此,注册中心创建完成,可以看到,还没有服务注册到注册中心。

写的好累,今天先到这里吧,下一节再写服务提供者和消费者。