Springcloud--注册中心Eureka的搭建(一)

                           Springcloud–注册中心Eureka的搭建(一)

                                                                                                                                  文 / 汝淉

里面有写的不合理和不恰当的地方欢迎指出来交流..
如需转载请说明出处,,,原创不易,,谢谢支持….


搭建之前,,提一下SpringBoot…因为Springcloud的基础使用的就是Springboot…
这里引用一下别人的文档…2小时学会Springboot.
当然再给几篇别人的博客,,我也是学习他们的,,,自己写的原因是因为,,,我写的相对更细,,,结构相对更分明一些…
可能自己理解力不是那么强,,看他们的会走一些死胡同…可以结合的一起看,,,这样更清晰…
以下是他们的链接
方志明的史上最简单的Springcloud专栏.写的非常用心..
翟永超的Spring Cloud构建微服务架构专栏..均可以结合之一起学习


在搭建之前,很有必要把整个服务结构分析一下..
始终记住一句话:::除了注册中心 其他所有的服务既是服务端也是客户端 这句话很重要 别进入误区
上截图更直观(不要嫌弃太low,哈哈哈)
这里写图片描述


接下来首先搭建注册中心..

工具:IDEA版本2018.1 jdk:1.8

一、搭建Eureka–也就是服务注册与发现(注册中心)

1新建工程,选择Spring Initializr,默认地址,或者修改为http://start.spring.io
2下一步,配置工程信息
3下一步,选择Cloud Discovery,勾选EurekaServer,完成
4在Application启动类上加入注解@EnableEurekaServer
这里写图片描述
..

..然后就创建成功了…

删除里面的mvn文件和包,,共3处..
这里写图片描述
pom.xml如下

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.2.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <spring-cloud.version>Finchley.RC2</spring-cloud.version>
    </properties>

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

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

启动类就是项目生成的第一个class文件..,,在该类名上加注解@EnableEurekaServer 就表明这个服务就是注册中心了…接下里去操作其他的步骤..当然注册中心服务也是靠这个类来启动的.
通过@EnableEurekaServer注解启动一个服务注册中心提供给其他应用进行对话。这一步非常的简单,只需要在一个普通的Spring Boot应用中添加这个注解就能开启此功能,比如下面的例子

package eureka.eurekaservice;

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

@EnableEurekaServer
@SpringBootApplication
public class EurekaserviceApplication {
//服务中心
    public static void main(String[] args) {

        SpringApplication.run(EurekaserviceApplication.class, args);
    }
}

在默认设置下,该服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为,只需要在application.properties中问增加如下配置:

server.port=1111

eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://localhost:${server.port}/eureka/

为了与后续要进行注册的服务区分,这里将服务注册中心的端口通过server.port属性设置为1111。

启动工程后,访问:http://localhost:1111/
这里写图片描述
服务注册与发现到此创建完成..


猜你喜欢

转载自blog.csdn.net/qq_42362099/article/details/80585550