인프런 커뮤니티 질문&답변
배포 환경에서도 random.value를 사용하는지 궁금합니다.
작성
·
310
2
현재 localhost에서 여러 개의 user-service를 실행하기 위해 port를 나누어 실행한다고 생각하는데요.
배포 환경이라면 user-service가 각각 다른 hostname (ip주소)를 가질 수도 있겠다는 생각이 들어서 질문드립니다. 다른 hostname을 가진다면 고정 포트를 사용한다거나 랜덤 포트를 사용하더라도 xxx.xxx.xxx.x:user-service:0 으로 instance id를 등록해도 xxx 부분이 다르기 떄문에 문제가 없을거라 생각합니다.
제가 추측한 내용이 맞다면 지금 수업에서 작성한 application.yml은 로컬 환경을 위한 설정이라고 생각하려고 합니다.
그리고 수업 잘 듣고 있습니다. 좋은 강의 감사합니다 😄
답변 1
6
안녕하세요, 이도원입니다.
실제 업무 환경에서 random port를 사용하는 건, user-service와 같은 애플리케이션의 실행 환경에 따라 달라지게 됩니다. 컨테이너 환경일 수도 있고, 개별적인 서버에 별도로 실행할 수도 있습니다. 그러나, MSA에서 말하는 마이크로서비스의 규모가 그렇게 크지 않는 경우라면, 컨테이너 가상화를 통해 실행하는 경우가 많고, Kubernetes와 같은 Orchestration tool을 이용하여 관리하게 됩니다. LB 환경을 위해 여러 서비스를 등록할 때, 또는 자동으로 서비스가 증가되어야 하는 상황이라면, random port를 통해 이용하는게 일반적일 것 같습니다. 단일 서비스로 관리되는 경우라면 지정된 PORT를 관리하는 것도 가능하겠지만, 같은 서비스를 여러개 실행하는 경우라면, 관리자나 운영자가 매번 port 번호를 지정하는 것도 한계가 있다고 생각되네요.
참고로, Kubernetes에서 운영되는 기본 단위인 POD의 컨테이너들은 random port로 설정되고, 실제로 이러한 포트보다는 Service를 통해 POD와 컨테이너의 이름을 통해 관리하고 있습니다.
추가 질문 사항 있으시면 다시 글 남겨 주세요.
감사합니다.





