서버/클라이언트, 프론트/백? 눈치껏 그냥저냥 쓰고 있기는 한데, IT용어는 항상 헷갈린다.
이번기회에 정확하게 이해하고자 정리해둔다.
# 서버와 클라이언트 / 프론트와 백
서버와 클라이언트의 관계는 가게의 손님(클라이언트)과 종업원(서버)의 관계라고 생각하면 이해하기 쉽다.
손님(클라이언트)와 같이 계속해서 서비스를 요청하는 컴퓨터를 클라이언트, 종업원(서버)와 같이 요청하는 서비스를 제공하는 컴퓨터를 서버 라고 한다.
그러니까 서비스를 사용하는 사용자들이 소유한 모든 컴퓨터를 클라이언트라고 할수있다. 우리가 사용하는 스마트폰이나 컴퓨터도 다 서비스를 요청하는 클라이언트다.
한편, 고객의 입장에서 보면 클라이언트 컴퓨터를 직업 볼 수 있고, 만질 수 있다. 그래서 고개가 앞에 있는 이 클라이언트 컴퓨터를 다른말로는 '프론트 엔드'라고 표현한다.
반면 서버는 고객이 볼 수 없는곳에 있다. 그래서 서버를 다른말로 '백엔드' 라고 부른다.
# 그럼 서버는 어떻게 돌아가는데? feat.리눅스
일단 '서버'는 '클라이언트'의 요청에 응답하는 컴퓨터다.
클라이언트는 서버에게 여러가지 요청을 할수 있다. 예를들면 로그인, 회원가입, 상품 리스트 요청, 결제 요청 등등 아주 다양한 요청을 할수있다.
예를들어보자. 클라이언트가 서버에게 로그인 요청을했다고 가정하자.
이때 서버는 생각한다. '이 아이디가 존재하나?', '존재한다면 비밀번호는 이게 맞나?' 등등 ..
이렇게 컴퓨터가 생각한다는 건 코딩됭 프로그램이 동작한다는 것을 의미한다. 프로그래밍 언어로 컴퓨터로 일을 시킨거다. 하드웨어를 직접 컨트롤 하지 않으려면 운영체제 위에서 프로그램을 돌려야한다.
즉, 서버는 이런 생각을 하는 응용프로그램을 24시간 265일 돌려놓는거다. 그럼 해당 프로그램이 코딩된 그대로 생각하고 응답해 준다.
이때 서버프로그램을 많이 돌리는 운영체제 중 하나가 리눅스다. 윈도우에서 파워포인트를 돌리듯, 리눅스 위에서도 이런저런 프로그램을 돌릴 수 있는데, 서버에서는 이 운영체제를 많이 사용한다. 왜 하필 서버 프로그램을 리눅스 위에서 돌리냐고? 리눅스가 무료이기 때문이다!
# 리눅스 더 알아보기 (feat. 우분투? 레드햇? 많이들어는 봤는데 그게 뭔데??)
리눅스는 리눅스 토발스가 만든 운영체제(OS)다. 앞서 말했듯, 윈도우 OS, 맥 OS 등과 달리 무료로 풀렸기 때문에 리눅스는 서버 프로그램을 돌리는 데 많이 사용한다.
우분투(Ubuntu)는 리눅스의 유명한 버전 중 하나이다.
윈도우 98, XP, 7, 10 등 다양한 버전이 있듯이 리눅스에도 다양한 버전이 존재한다.
리눅스가 무료로 배포되자, 사람들은 이 운영체제를 발전시켰다. 그 중 유명한 버전 중의 하나가 우분투이고,
또 다른 유명한 버전으로는 레드햇(Red hat)리눅스가 있다.
그중 레드햇은 리눅스를 개량해서 유료로 판매하는 회사이다. 유료로 판매하는 만큼 운영체제의 품질을 레드햇에서 보장해줌으로, 안정적인 서버 구축 및 운영 필수적인 금융 산업 등에서 많이 사용한다.
우리가 사용하는 안드로이드 또한 리눅스의 유명한 개량버전 중 하나이다. 안드로이드는 구글이 리눅스를 모바일 운영체제 형태로 개량해서 발전시킨 운영체제다. 이럿듯 운영체제는 서로에게 영향을 주며 발전한다.
참고 : 최원영, 비전공자를 위한 이해할 수 있는 IT 지식, 티더블유아이지, 2020
'Study > 용어익히기' 카테고리의 다른 글
헷갈리는 IT 용어 이해하기__6. 데이터베이스 (0) | 2021.11.28 |
---|---|
헷갈리는 IT 용어 이해하기__5. 웹 이해하기 (0) | 2021.11.27 |
헷갈리는 IT 용어 이해하기__4. API/JSON (0) | 2021.11.26 |
헷갈리는 IT 용어 이해하기__3. CI/CD (0) | 2021.11.21 |
헷갈리는 IT 용어 이해하기__2. JAVA니가 먼데? (0) | 2021.11.21 |