

Allow multiple instances 선택.server.port=8080
server.port=8080

현재 톰캣이 8080 port를 사용.
이 상태를 그대로 유지한채 applicaion.properties로 가서 server.port의 값을 수정.
server.port=9090


9090 port를 사용.
↓ config
@Configuration
@EnableFeignClients(basePackages = "com.project.consumingrestendpoints.proxy")
public class ProjectConfig1 {
}
↓ 9090 controller
@RestController
public class PaymentsController1 {
private final PaymentsProxy1 paymentsProxy1;
public PaymentsController1(PaymentsProxy1 paymentsProxy1) {
this.paymentsProxy1 = paymentsProxy1;
}
@PostMapping("/payment1")
public Payment1 createPayment(@RequestBody Payment1 payment1) {
System.out.println("9090 호출.");
String requestId = UUID.randomUUID().toString();
return paymentsProxy1.createPayment(requestId, payment1);
}
}
↓ proxy
@FeignClient(name = "payments", url = "http://localhost:8080")
public interface PaymentsProxy1 {
@PostMapping("/payment")
Payment1 createPayment(@RequestHeader String requestId,
@RequestBody Payment1 payment1);
}
↓ 8080 controller
@RestController
public class PaymentsController {
private static Logger logger = Logger.getLogger(PaymentsController.class.getName());
@PostMapping("/payment")
public ResponseEntity<Payment> createPayment(@RequestHeader String requestId,
@RequestBody Payment payment) {
logger.info("Received request with ID " + requestId +
" ;Payment Amount: " + payment.getAmount());
payment.setId(UUID.randomUUID().toString());
System.out.println("8080 호출");
return ResponseEntity
.status(HttpStatus.OK)
.header("requestId", requestId)
.body(payment);
}
}


