美文网首页
SpringCloud-eureka-01服务注册

SpringCloud-eureka-01服务注册

作者: 天的安排 | 来源:发表于2019-07-08 18:57 被阅读0次

    Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务注册和发现功能。


    Demo编写,Server端

    引入依赖

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

    启动类中加注解

    @SpringBootApplication
    @EnableEurekaServer
    public class EurkaServerApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(EurkaServerApplication.class, args);
        }
    
    }
    

    配置文件

    #修改server port
    server.port=10002
    # 是否要注册到其他Eureka Server实例
    eureka.client.register-with-eureka=false
    # 是否要从其他Eureka Server实例获取数据
    eureka.client.fetch-registry=false
    eureka.client.service-url.defaultZone=http://localhost:10002/eureka/
    

    Demo编写,Client端,可以认为是提供者

    引入依赖

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

    配置文件

    #修改server port
    server.port=10001
    spring.application.name=eureka-client1
    # 指定eureka server通信地址,注意/eureka/不能少
    eureka.client.service-url.defaultZone=http://localhost:10002/eureka/
    # 是否注册IP到eureka server,如不指定或设为false,那就会注册主机名到eureka server
    eureka.instance.prefer-ip-address=true
    

    测试

    通过访问http://localhost:10002/可以观察到如下界面

    这里我们其实是有注册一个提供者的,大家看到上图中有红色 字体的英文,这个是rureka的自我保护机制,不是异常,不是报错,但是如果想让这个不显示也是有方法的,就是禁用eureka的自我保护机制

    #禁用eureka的自我保护机制,不推荐设置
    #eureka.server.enable-self-preservation=false
    

    修改服务名称

    #修改服务名称
    eureka.instance.instance-id=springboot-mybatis-provider-001-18080
    

    添加actuator的info详细信息

    添加依赖

    <!--actuator依赖      主管监控跟信息配置-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-actuator</artifactId>
            </dependency>
    #不知道为什么读取不到$project.version$等
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <delimiters>
                            <delimit>$</delimit>
                        </delimiters>
                    </configuration>
                </plugin>
    #build中添加
    <finalName>springboot-mybatis-provider-001-18080</finalName>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.yml</include>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
    

    点击springboot-mybatis-provider-001-18080

    效果如下:


    相关文章

      网友评论

          本文标题:SpringCloud-eureka-01服务注册

          本文链接:https://www.haomeiwen.com/subject/rjgahctx.html