1. 程式人生 > >Spring Cloud雲服務架構 - commonservice-eureka 項目過程構建

Spring Cloud雲服務架構 - commonservice-eureka 項目過程構建

Spring Cloud Spring Boot mybatis

我們針對於HongHu cloud的eureka項目做以下構建,整個構建的過程很簡單,我會將每一步都構建過程記錄下來,希望可以幫助到大家:

  1. 創建一個名為particle-common-eureka的maven項目,繼承particle-commonservice,具體的pom.xml配置文件如下:

    <?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>  
    
    <parent>  
        <groupId>com.ml.honghu</groupId>  
        <artifactId>particle-commonservice</artifactId>  
        <version>0.0.1-SNAPSHOT</version>  
    </parent>  
    
    <artifactId>particle-commonservice-eureka</artifactId>  
    <packaging>jar</packaging>  
    
    <name>particle-commonservice-eureka</name>  
    <description>particle-commonservice project for Spring Boot</description>  
    
    <dependencies>  
        <dependency>  
            <groupId>org.springframework.cloud</groupId>  
            <artifactId>spring-cloud-starter-eureka-server</artifactId>  
        </dependency>  
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-security</artifactId>  
        </dependency>  
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-devtools</artifactId>  
        </dependency>  
    
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-test</artifactId>  
            <scope>test</scope>  
        </dependency>  
    
    </dependencies>  
    
    <build>  
        <plugins>  
            <plugin>  
                <groupId>org.springframework.boot</groupId>  
                <artifactId>spring-boot-maven-plugin</artifactId>  
                <executions>  
                    <execution>  
                        <id>1</id>  
                        <goals>  
                            <goal>repackage</goal>  
                        </goals>  
                    </execution>  
                    <execution>  
                        <id>2</id>  
                        <goals>  
                            <goal>build-info</goal>  
                        </goals>  
                    </execution>  
                </executions>  
                <configuration>  
                    <executable>true</executable>  
                </configuration>  
    
            </plugin>  
        </plugins>  
    </build>  
    </project>  
  2. 在啟動類入口引用eureka的相關配置,代碼如下:
    `package com.ml.honghu;

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

@EnableEurekaServer
@SpringBootApplication
public class ServiceApplication {

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

} `

  1. 配置application.yml文件
# server (eureka 默認端口為:8761)  
server:  
  port: 8761  

# spring  
spring:  
  application:  
    name: particle-commonservice-erueka  

# eureka  
eureka:   
  client:   
    # 是否註冊到eureka  
    register-with-eureka: true  
    # 是否從eureka獲取註冊信息  
    fetch-registry: false  
    availability-zones:   
      honghu: honghuZone  
    service-url:   
      honghuZone: http://honghu:123456@localhost:8761/eureka/  
      defaultZone: http://honghu:123456@localhost:8761/eureka/  
  instance:  
    prefer-ip-address: true  
    hostname: localhost  
    metadataMap:  
      zone: honghuZone  
      user: ${security.user.name}  
      password: {security.user.password}  

  # 指定環境  
  environment: dev  
  #指定數據中心  
  datacenter: honghu  
  # 關閉自我保護模式  
  server:   
    enable-self-preservation: false  
  #設置清理無效節點的時間間隔,默認60000,即是60s  
    eviction-interval-timer-in-ms: 60000  

# 服務認證  
security:   
  basic:   
    enabled: true  
  user:   
    name: honghu  
    password: 123456  

management:  
  security:  
    enabled: false  
  1. 增加項目的log機制和打包運行機制(後面我們會詳細編寫針對於Linux Centos下的打包部署機制)
  2. 自此整個項目部署完成,通過手動方式進行Run As --> Spring Boot App.

Spring Cloud雲服務架構 - commonservice-eureka 項目過程構建