티스토리 뷰

 

백엔드 학습을 하시는 분들은 이런 식의 실수를 가끔씩 하시죠.

(여기에서 백엔드 학습이란 : 노드, 스프링, 장고 등의 서버 프레임워크 학습)

 

1. 명령 프롬프트 또는 터미널에서 명령어를 실행하여 포트 사용

2. 명령 프롬프트 또는 터미널을 그냥 닫아버림(포트는 여전히 연결중)

3. 서버 프로그램 수정 후 다시 포트 연결을 위한 명령어 실행

4. 뭐여 이거 ㅠㅠ 왜 안되는겨 

5. 위 과정을 반복

6. 이 길은 내 길이 아닌겨..

 

이런 경우 대부분의 시스템에서는 다음과 같은 종류의 에러 메시지가 나타납니다. 

 

"port already in use"

 

...네! 포트가 이미 사용 중이므로 포트에 연결하지 못하는 것입니다. 이 경우 해결 방법은 두 가지 정도입니다.

 

1. 실행 중인 포트를 연결 해제한 후 연결 시도

2. 다른 포트에 연결 시도

 

여기에서 1번 방법을 선택하셨다면, 윈도우즈 명령 프롬프트에서 다음과 같은 명령어들로 해결을 할 수 있습니다. 

 

1
netstat

위 명령어는 '실행 중인 port 표시하기' 명령어 입니다.

 

1
netstat -a -o

위 명령어는 '실행 중인 port 표시하기' 명령어에 프로세스 아이디 추가 기능까지 포함시킨 명령어 입니다.

 

1
taskkill /f /pid PROCESS_ID

앞서 실행 중인 포트의 프로세스 아이디를 확인하셨다면, 해당 프로세스 아이디(PROCESS_ID)를 직접 선택하여 강제종료(forced kill)해줄 수 있습니다.

 

위와 같이 문제를 해결하는 습관을 가지시면 포트로 인한 에러에는 당황하지 않고 대처하실 수 있게 됩니다.

코딩 학습에 있어 시행착오는 필수요소입니다. 에러를 즐기는 태도를 지니시길 바라며.. 그럼 이만 줄이겠습니다. 

 

감사합니다

 

 

댓글
공지사항