척하기 설명 :
소비자는 기존의 인터페이스 지향 프로그래밍의 척하기 요소 기술 SpringCloud 마이크로 서비스로 유레카의 서비스 호출 마이크로 인스턴스에 갈 수 있습니다.
소비자 모듈을 만들기 :
pom.xml 파일 추가 웹 클라이언트는 유레카는 척하기를 좌표 좌표 좌표
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
</dependency>
application.properties 구성 유레카 주소와 마이크로 서비스 응용 프로그램 인스턴스의 이름
server.port=8081
#此module不进行注册
eureka.client.register-with-eureka=false
eureka.client.service-url.defaultZone=http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
#自定义配置
#要消费的微服务实例的应用名称
provided_url=SERVICE
서비스 계층, 사용 마이크로 척하기 콜 서비스 인스턴스
/**
* DESC : 通过Fegin调用微服务实例,实现传统的面向接口编程
* @author Lonely
*
*/
@FeignClient(value = "${provided_url}") //Eureka注册中心的微服务实例应用名称
public interface TestService {
//对应微服务实例中的接口路径
@RequestMapping(value="/testcontroller.do/{id}/{name}",method=RequestMethod.GET)
public String testController(@PathVariable("id") int id,@PathVariable("name") String name);
}
컨트롤러 층은 서비스 레이어를 호출
@Controller
public class TestController {
@Autowired
private TestService testService; //调用Service层
@RequestMapping(value="/testConsume.do/{id}/{name}",method=RequestMethod.GET)
@ResponseBody
public String test(@PathVariable("id") int id,@PathVariable("name") String name) {
return testService.testController(id, name);
}
}
시작 클래스는, 주석 척하기 스캔 유레카 클라이언트 메모를 추가
@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients(basePackages = "online.liema.service") //扫描使用 @FeignClient 注解的Service层
public class FeignApp {
public static void main(String[] args) {
SpringApplication.run(FeignApp.class, args);
}
}
첫 번째 차례 차례로 마이크로 서비스 인스턴스를 활성화하고, 마지막 척하기 모듈, 액세스 컨트롤러를 시작, 세 유레카를 시작합니다. 척하기는 부하 균형, 기본 폴링 알고리즘이 될 것입니다.