> Java > java지도 시간 > 본문

SpringCloud 튜토리얼 서비스 등록(영사)

无忌哥哥
풀어 주다: 2018-07-20 10:59:49
원래의
2222명이 탐색했습니다.

이 글에서는 서비스 검색 및 구성을 제공하는 도구인 spring cloud consul 컴포넌트를 주로 소개합니다. Consul은 분산되어 있고 가용성과 확장성이 뛰어납니다.

1. consul 소개

consul에는 다음과 같은 속성이 있습니다.

  • 서비스 검색: consul은 http를 통해 서비스를 등록하고, 서비스는 서로를 감지합니다.

  • 서비스 상태 모니터링

  • 키/값 저장

  • 다중 데이터 센터

consul은 Mac Windows Linux와 같은 시스템에서 실행될 수 있습니다.

2. Consul 설치

linux

$ mkdir -p $GOPATH/src/github.com/hashicorp && cd $!
$ git clone https://github.com/hashicorp/consul.git
$ cd consul
$ make bootstrap
$ make bootstrap
로그인 후 복사

Windows에서 설치:
windows에서 consul을 설치하는 방법을 확인하세요

3. 프로젝트 빌드

consul-miya springboot 프로젝트를 빌드하고 spring-cloud-starter-consul 종속성을 가져옵니다. -discovery, 종속 파일:

<?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.forezp</groupId>
    <artifactId>consul-miya</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>consul-miya</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.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>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</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>Dalston.RELEASE</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>


</project>
로그인 후 복사

서비스 검색을 활성화하려면 항목 파일 ConsulMiyaApplication에 @EnableDiscoveryClient 주석을 추가하세요.

@SpringBootApplication
@EnableDiscoveryClient
@RestController
public class ConsulMiyaApplication {

    @RequestMapping("/hi")
    public String home() {
        return "hi ,i&#39;m miya";
    }

    public static void main(String[] args) {
        new SpringApplicationBuilder(ConsulMiyaApplication.class).web(true).run(args);
    }
}
로그인 후 복사

구성 파일 application.yml에서 consul 서비스의 포트를 8500으로 지정하세요.

spring:
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        healthCheckPath: ${management.contextPath}/health
        healthCheckInterval: 15s
        instance-id: consul-miya
  application:
    name: consul-miya
server:
  port: 8502
로그인 후 복사

시작 프로젝트를 실행하고 localhost :8500에 접속하면 consul-miya가 등록된 것을 확인할 수 있습니다.

위 내용은 SpringCloud 튜토리얼 서비스 등록(영사)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿