zoukankan      html  css  js  c++  java
  • Spring Cloud Eureka Server例子程序

    Spring-Cloud-Eureka-Server 及Client 例子程序

    参考源代码:https://github.com/spring-cloud-samples/eureka

    可以启动成功,但是不能打包,原因也不太清楚。

    启动后访问 http://localhost:8761/ 可以看到启动了哪些实例

    实际看来 一般并不需要对 EurekaServer做很多的定制。
    完全可以使用官方已经打包好的EurekaServer。

    例子程序中包含的内容也非常少。

    对于maven项目
    主要就包含
    1.入口程序(包含main方法)
    2.pom文件(jar包依赖 现在没这玩意真不行)
    3.配置文件

    注意实际上要添加如下依赖应用才能跑的起来,否则会抛ch.qos.logback相关的一些类找不到。这也是瞎碰碰上找到的。

            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>1.1.3</version>
            </dependency>
            
    

    启动后发现eureka页面上有一些红色提示(暂未找到解决办法)

    EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE.
    
    

    Client例子程序

    启动Client例子程序 就可以从Eureka的页面中看到对应的实例名称了 即注册成功

    @Configuration
    @ComponentScan
    @EnableAutoConfiguration
    @EnableEurekaClient
    @RestController
    public class Application {
    
        @RequestMapping("/")
        public String home() {
            return "Hello world";
        }
    
        public static void main(String[] args) {
            new SpringApplicationBuilder(Application.class).web(true).run(args);
        }
    
    }
    
    

    配置文件
    application.yml

    eureka:
      client:
        serviceUrl:
          defaultZone: http://localhost:8761/eureka/
    

    pom

    重点注意: 与Server的区别主要是 spring-cloud-starter-eureka

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>com.laoniu</groupId>
        <artifactId>spring-cloud-client</artifactId>
        <version>1.0-SNAPSHOT</version>
        <parent>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-parent</artifactId>
            <version>Brixton.BUILD-SNAPSHOT</version>
            <relativePath /> <!-- lookup parent from repository -->
        </parent>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-eureka</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-config</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>1.1.3</version>
            </dependency>
        </dependencies>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <start-class>com.laoniu.EurekaApplication</start-class>
            <java.version>1.7</java.version>
            <docker.image.prefix>springcloud</docker.image.prefix>
        </properties>
    
        <build>
            <plugins>
    
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <!-- defined in spring-cloud-starter-parent pom (as documentation hint),
                        but needs to be repeated here -->
                    <configuration>
                        <requiresUnpack>
                            <dependency>
                                <groupId>com.netflix.eureka</groupId>
                                <artifactId>eureka-core</artifactId>
                            </dependency>
                            <dependency>
                                <groupId>com.netflix.eureka</groupId>
                                <artifactId>eureka-client</artifactId>
                            </dependency>
                        </requiresUnpack>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>pl.project13.maven</groupId>
                    <artifactId>git-commit-id-plugin</artifactId>
                    <configuration>
                        <failOnNoGitDirectory>false</failOnNoGitDirectory>
                    </configuration>
                </plugin>
                <plugin>
                    <!--skip deploy (this is just a test module) -->
                    <artifactId>maven-deploy-plugin</artifactId>
                    <configuration>
                        <skip>true</skip>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
        <repositories>
            <repository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>http://repo.spring.io/libs-snapshot-local</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
            <repository>
                <id>spring-milestones</id>
                <name>Spring Milestones</name>
                <url>http://repo.spring.io/libs-milestone-local</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
            </repository>
            <repository>
                <id>spring-releases</id>
                <name>Spring Releases</name>
                <url>http://repo.spring.io/libs-release-local</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>http://repo.spring.io/libs-snapshot-local</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </pluginRepository>
            <pluginRepository>
                <id>spring-milestones</id>
                <name>Spring Milestones</name>
                <url>http://repo.spring.io/libs-milestone-local</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
    
    </project>
    
    
  • 相关阅读:
    How to use VS2012 remote debug Windows Azure Cloud Services
    vue ---05 分页和详情页功能的实现
    vue ----04课程列表的展示
    vue--03 首页和登陆注册
    luffy--03 首页和登陆注册(跨域问题的解决)
    luffy--02 ---项目配置和数据库链接
    luffy---01
    DRF---一些配置/设置
    drf-路由
    drf视图
  • 原文地址:https://www.cnblogs.com/laoniu85/p/5080990.html
Copyright © 2011-2022 走看看