개요
간단한 예제를 사용하여 스프링 구름에서 유레카와 리본의 기본 사용을 보여줍니다.
버전 및 환경
유레카 서버를 구축하십시오
Spring Cloud에서는 Eureka를 사용하여 마이크로 서비스를 관리 할 수 있으며 마이크로 서비스는 Eureka에 등록 할 수 있습니다.
먼저 Idea의 Spring Initialzr 사용하여 Eureka Server 등록 센터를 만들 수 있습니다.
Application.Properties 파일을 수정하고 다음 내용을 추가하십시오
spring.application.name = eureka-server eureka.instance.hostname = localhost eureka.client.register-with-eureka = false eureka.client.fetch-registry = false server.port = 8881
스프링 부츠에 의해 생성 된 스타트 업 클래스 ServerApplication 에 @EnableEurekaServer 주석을 추가
package com.springcloud.eureka; import org.springframework.springApplication; import org.springframework.boot.autoconfigure.springbootApplication; import org.springframework.cloud.netflix.eureka.serverkaserKAserCationPORC; Class ServerApplication {public static void main (String [] args) {springApplication.run (serverApplication.class, args); }}브라우저에 http : // localhost : 8881/를 입력하십시오
다음 인터페이스를 볼 수 있습니다.
서비스가 아직 등록되지 않았 음을 알 수 있습니다. 이 시점에서 간단한 마이크로 서비스 등록 센터가 구축되었습니다.
마이크로 서비스 사용자 서비스 작성
그런 다음 REST를 사용하여 마이크로 서비스 인터페이스를 구축하고 등록 센터에 등록하십시오. 여전히 Spring Initialzr 사용하여 새로운 프로젝트를 구축합니다. 사용량은 위와 동일합니다.
이번에는 Eureka Discovery 구성 요소를 확인해야합니다. Eureka Server 대신.
Application.Properties 파일을 수정하고 다음 내용을 추가하십시오.
spring.application.name = user server.port = 8882 Eureka.client.service-url.defaultzone = http : // localhost : 8881/eureka/
Spring Boot 우리를 위해 생성하는 UserApplication 클래스에서 @EnableDiscoveryClient 주석을 사용하십시오.
패키지 com.springcloud; import org.springframework.boot.springApplication; import org.springframework.boot.autoconfigure.springbootapplication; import org.springframework.cloud.cloud.client.client.client.discovery.enablediscoveryclient@springbootapplic venublicoutpollic onablediscoveryclient void main (String [] args) {springApplication.run (userApplication.class, args); }}REST 전체 마이크로 서비스 인터페이스를 만듭니다.
package com.springcloud; import org.springframework.web.bind.annotation.getmapping; import org.springframework.web.bind.annotation.restcontroller; @RestControllerPublic 클래스 USERCONTROLLER ( "/getUSER") public getUser () {em rest "; }}userApplication을 실행 한 후 http : // localhost : 8881/다시 방문하십시오
사용자 서비스가 등록되었음을 알 수 있습니다.
마이크로 서비스 순서 작성
다음으로 주문 마이크로 서비스를 구축하고 사용자 마이크로 서비스에서 인터페이스에 액세스합니다.
여전히 Spring Initialzr 사용하여 새 프로젝트를 구축하십시오. 사용자 마이크로 서비스는 여러 시스템에 배포 될 수 있습니다. 클라이언트 가이 서비스에 액세스하면 사용자 서비스가 배포 된 상태에서 요청을 모든 컴퓨터로 라우팅 할 수 있습니다. 따라서 클라이언트는 사용자 서비스를 예약하기 위해 라우팅 알고리즘을 사용해야합니다. 스프링 클라우드에서는 리본 구성 요소를 사용하여 클라이언트 라우팅을 수행 할 수 있습니다. 리본은 서비스 등록 센터로 이동하여 해당 서비스를 호출하기 위해 서비스 목록을 얻습니다.
이번에는 Eureka Discovery 구성 요소를 확인하는 것 외에도. Ribbon 도 확인해야합니다.
Application.Properties 파일을 수정하고 다음 내용을 추가하십시오.
spring.application.name = order server.port = 8883 Eureka.client.service-url.defaultzone = http : // localhost : 8881/eureka/
Spring Boot 에서 생성 된 OrderApplication 클래스에 다음 구성을 추가하십시오.
패키지 com.springboot; import org.springframework.boot.springApplication; import org.springframework.boot.autoconfigure.springbootApplication; import org.springframework.cloud.client.discovery.enablediscoveryclient.cloud.cloud.cloud.client org.springframework.context.annotation.bean; import org.springframework.web.client.resttemplate; @enableableScoveryClient @springbootApplicationPublic Class OrderApplication {@bean @loadbalanced restemplate resttemplate () {return new RestTemplate (); } public static void main (String [] args) {springApplication.run (OrderApplication.class, args); }} 리본이 사용되므로 @LoadBalanced 주석을 여기에서 사용해야합니다.
OrderController 작성하십시오.
패키지 com.springboot; import org.springframework.bean.beans.annotation.autowired; import org.springframework.web.bind.annotation.getmapping; import org.springframework.beb.bind.annotation.restcontroller; 가져 오기 org.springframework.web.client.resttemplate; @RestControllerPublic Class OrderController {@autowired private resttemplate resttemplate; @GetMapping ( "/getOrterSer") public String getOrterSer () {return resttemplate.getForentity ( "http : // user/getUser", string.class) .getBody (); }} OrderApplication 실행 한 후 http : // localhost : 8881/을 방문하십시오.
주문 서비스가 등록 센터에 등록되었음을 알 수 있습니다.
다음 UserController OrderController getUser getOrderUser
입력 : http : // localhost : 8883/getOrteruser
당신은 그것이 반환되는 것을 볼 수 있습니다 : 나는 사용자 목록입니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.