1. 들어가며
IT 관련 업종에서 일을 하면 무조건 들어봤을 단어입니다.
하지만 어떠한 대화 중 혼동하는 경우가 있습니다.
쉽게 풀어 설명드리도록 하겠습니다.
2. 서버
전에 HTTP는 요청과 응답으로 구성되어 있다고 기재하였습니다.
여기서 서버는 요청을 받아 처리하여 응답하는 하드웨어 혹은 소프트웨어를 지칭합니다.
손님과 가게의 관계에서 가게가 서버가 됩니다.
식당에 들어가서 메뉴를 주문하면(요청), 식당에선 요청을 확인하고,
그 요청을 처리하여 주문한 메뉴에 해당하는 요리를 손님의 식탁에 차려줍니다.(응답)
여기서 가게는 요청받은 것에 해당하는 것을 요청자에게 반환하였으므로 서버입니다.
3. 클라이언트
요청을 하는 주체를 이야기합니다.
클라이언트는 스마트폰일수도 있고, PC일수도 있고, 다른 서버, 혹은 동일 서버일 수도 있습니다.
사람/사용자의 개념이 아닌 요청한 것에 대한 자료를 얻기 위해 서버에 요청을 보내 원하는 응답을 받는 행위를 하는 주체를 말합니다.
용돈 달라고 자녀가 이야기 했을 때(요청), 청소하면 용돈을 준다며 거절하면(응답),
생각했던 결과와 다르더라도 요청에 대한 응답이기 때문에 요청을 한 자녀는 클라이언트입니다.
4. 클라이언트와 서버가 헷갈린다면?
스마트폰과 PC는 그렇다쳐도, 다른 서버와 동일 서버가 어떻게 클라이언트가 되는지 설명드리겠습니다.
외부망이 아닌 내부망에서 서버 간에 데이터를 요청하고 받는 경우가 많습니다.
주로 웹서버와 DB서버가 그렇습니다.
HTTP가 아닌 다른 프로토콜을 통해 서버간 통신을 하여 데이터를 주고받을 수 있고,
해당 통신은 동일 서버에서도 이루어질 수 있습니다.
빵가게에서 옆의 분식을 시켜먹는다고 하면,
평소 빵가게 주인은 서버이지만, 분식을 시켜먹는 순간 클라이언트가 됩니다.
백화점에서 근무하는 직원은 서버이지만, 퇴근길에 일하는 백화점에서 물건을 사 간다면, 클라이언트가 됩니다.
평소 데이터를 제공하는 서버가, 클라이언트가 되어 데이터를 얻기 위해 다른 서버에 요청을 보내고 응답을 받을 수 있는 것입니다.
즉, 서버와 클라이언트는 고정되는 것이 아니고, 입장에 의해 결정되는 것입니다.
5. 정리
요청하는 행위를 한다면 클라이언트,
요청에 대해 응답하는 행위를 한다면 서버입니다.
다음은 GET/POST에 대해 정리해 보겠습니다.
'정보' 카테고리의 다른 글
웹개발자와 대화하기 위한 단어사전 #6. 죽이다/살리다, 내리다/올리다 (0) | 2020.08.29 |
---|---|
웹개발자와 대화하기 위한 단어사전 #5. 동기/비동기 (0) | 2020.08.28 |
웹개발자와 대화하기 위한 단어 사전 #4 데이터베이스 (0) | 2020.08.27 |
웹개발자와 대화하기 위한 단어사전 #3. GET, POST (0) | 2020.08.26 |
웹개발자와 대화하기 위한 단어 사전 #1. HTTP (0) | 2020.08.24 |