이 글에서는 SpringBoot 서비스 등록 및 검색 사례를 주로 소개하는데, 관심 있는 친구들은 참고해 보세요.
마이크로서비스
자연스럽게 "마이크로서비스"를 실천하기 서비스 등록 및 검색 방법을 배워야 합니다
SpringBoot 기반의 마이크로서비스를 배우려면 SpringCloud를 선택하는 것이 당연합니다. 물론 이와 밀접한 관련이 있는 다른 기술을 선택할 수도 있습니다. dubbo
로서 Zookeeper를 사용하여 서비스 등록 및 검색을 구현할 수도 있습니다. 이 기능을 구현하는 데 Zookeeper가 좋은지 나쁜지는 각자의 의견이 있습니다
SpringCloud
Spring Cloud는 개발자가 분산 시스템에서 일부 공통 패턴을 신속하게 구축할 수 있는 도구를 제공합니다.
SpringCloud에는 분산/버전 관리 구성, 분산형 구성이 포함되어 있습니다. / 버전이 지정된 구성 및 기타 여러 하위 프로젝트.
분산/버전 구성
서비스 등록 및 검색
라우팅
서비스 간 호출
로드 밸런싱
회로 차단기
글로벌 잠금
리더십 선출 및 클러스터 상태
분산 메시징
서비스 등록 및 검색
SpringCloud 모듈
spring-cloud-starter-eureka-server
엔지니어링모듈
서비스등록센터
서비스모듈
서비스등록센터
검색 모듈을 생성하고 build.gradle에 spring-cloud-starter-eureka-server 종속성을 도입합니다
apply plugin: 'org.springframework.boot' dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:"+ springCloudVersion } } repositories { mavenCentral() } dependencies { compile ('org.springframework.cloud:spring-cloud-starter-eureka-server') } jar { baseName = 'discovery-bootcwenao' }
@EnableEurekaServer 주석을 통해 등록 센터 서비스 제공
/** * @author cwenao * @version $Id DiscoveryBootcwenaoApplication.java, v 0.1 2017-01-12 9:56 cwenao Exp $$ */ @EnableEurekaServer @SpringBootApplication public class DiscoveryBootcwenaoApplication { public static void main(String[] args) { new SpringApplicationBuilder(DiscoveryBootcwenaoApplication.class).web(true).run(args); } }
application.yml 유레카 구성속성
server: port: 8761 eureka: instance: hostname: discovery client: registerWithEureka: false fetchRegistry: false service-url: defaultZone: http://discovery:${server.port}/eureka/
localhost:8761 방문
서비스 등록
서비스 모듈을 생성하고 build.gradle에 spring-cloud-starter-eureka를 도입하세요
apply plugin: 'org.springframework.boot' dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:"+ springCloudVersion } } dependencies { compile('org.springframework.cloud:spring-cloud-starter-eureka') compile('org.springframework.cloud:spring-cloud-stream') } sourceSets { main { resources.srcDirs = ['src/main/resources', 'src/main/java'] resources.includes = ['**/*.xml', '**/*.yml'] } } jar { baseName = 'apigateway-bootcwenao' }
@EnableDiscoveryClient에 주석을 달아 서비스를 등록하세요
@SpringBootApplication @EnableDiscoveryClient public class ApiGatewayBootcwenaoApplication { public static void main(String[] args) { SpringApplication.run(ApiGatewayBootcwenaoApplication.class, args); } }
애플리케이션에서 유레카 속성을 구성하세요. yml
server: port: 10002 spring: application: name: apigateway eureka: client: registerWithEureka: true fetchRegistry: true serviceUrl: defaultZone: http://localhost:8761/eureka/
등록이 완료된 후 spring.application.name 구성을 통해 서비스에 접근할 수 있습니다
localhost:8761을 방문하여 등록 센터에 서비스가 등록되었는지 확인하세요.
서비스 등록 센터에서 사용자 이름과 비밀번호 활성화
사용자 이름과 비밀번호를 구성하여 서비스 공급자 application.yml을 구성합니다. applicaiton.yml
security: basic: enabled: true user: name: aa password: abcd
eureka: instance: hostname: configserver prefer-ip-address: true client: registerWithEureka: true fetchRegistry: true service-url: defaultZone: http://aa:abcd@localhost:8761/eureka/
【관련 추천】
위 내용은 서비스 등록 및 "마이크로서비스" 검색 사례에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!