앞선 글에서 MongoDB를 설치하는 방법과, 실행하는 방법에 대해 살펴봤다. 이번에는 MongoDB의 실행 포트를 확인하는 방법에 대해 알아보고 이어서, 실행 포트를 변경해 보자. MongoDB 실행 포트 확인하기 MongoDB가 실행 중인 포트를 확인하려면 'lsof -i | grep mongo' 명령어를 사용하면 된다. ~ lsof -i | grep mongo MongoDB를 실행한 후 해당 명령어를 입력해 보자. 그러면 다음과 같은 화면이 나오는 것을 볼 수 있다. 오른쪽의 localhost:27017 이 바로 MongoDB가 실행되는 포트이다. 이처럼 MongoDB는 기본적으로 27017번 포트를 사용해 실행된다. MongoDB 실행 포트 변경하기 하지만, 종종 MongoDB를 실행하는 포트를 ..
port
문제 원인 스프링 애플리케이션은 웹 서버를 내장하기 때문에, 하나의 포트에 하나의 스프링 애플리케이션만 실행할 수 있다. 조금 더 자세히 이야기 하면 하나의 포트에 둘 이상의 스프링 애플리케이션이 실행된다면, 사용자로부터 요청을 받았을 때 어떤 애플리케이션에서 요청을 처리해야 할지 알 수 없기 때문에, 하나의 포트에서는 하나의 스프링 애플리케이션만 실행돼야 한다. 이 때문에 이미 스프링 애플리케이션이 사용하고 있는 포트를 다른 스프링 애플리케이션이 사용하려고 하면 다음과 같은 오류가 뜬다. *보통 스프링 애플리케이션의 기본 포트는 8080번으로 설정되어 있기 때문에 여기서는 8080을 사용 중이라는 오류가 뜨는 상황을 보여준다. Web server failed to start. Port 8080 was ..
시작하며 HTTP(HyperText Transfer Protocol) 통신은 클라이언트와 서버 간 데이터를 주고 받기 위한 프로토콜이다. 다시 말하면, HTTP 통신 자체는 어떤 형식의 데이터를 보낼지 미리 정의해 놓는 방식일 뿐이다. 따라서 클라이언트와 서버간 HTTP 통신이 일어나기 위해서는 데이터를 주고 받기 위한 여러 기술이 필요하다. 이번 글에서는 HTTP 통신이 일어나기 위해 내부적으로 어떤 일이 일어나는지를 정리해본다. IP 레이어 IP 레이어란 무엇인가? 먼저 클라이언트와 서버를 생각해보자. 클라이언트와 서버는 컴퓨터일 뿐이며, 데이터를 요청하는 쪽이 클라이언트 데이터를 보내는 쪽이 서버가 된다. 따라서 이 둘간의 통신을 위해서는, 두 컴퓨터가 연결되기 위한 주소값이 필요하다. 이러한 역할..
IP Address의 한계점IP Address를 할당 받은 기기가 있다고 가정한다. 이 기기를 컴퓨터라고 생각해보자. 만약 IP Address만을 이용해 컴퓨터로 데이터를 보낸다면 컴퓨터는 그 데이터를 받을 것이다. 하지만, 문제는 그 데이터가 어느 프로세스에서 처리되어야 하는 것인지를 알 수가 없다. Port를 이용한 프로세스별 패킷 송수신예를 들어 컴퓨터에 카카오톡, 라인, Slack 메세지 프로세스가 실행 중이라고 해보자. 컴퓨터가 메세지를 받았을 때 어떤 프로그램으로 해당 메세지를 전송해야 하는가? 만약 아무런 정보가 없다면 어떤 프로세스로 메세지를 보내야 하는지 알 수 없다. 이를 해결하기 위해 TCP에서는 패킷에 어떤 프로세스가 받아야 하는지에 대한 정보(Port 정보)를 추가하여 보낸다. 통..