∟Framework/∟Django

Django - Client↔Server

최 수빈 2025. 1. 7. 12:03

 

클라이언트-서버

 

 

클라이언트(Client)

서비스를 요청하는 주체

 

요청(Request)를 보내는 컴퓨터

주로 웹 브라우저나 인터넷에 연결된 장치를 의미

  • 사용자 PC, 스마트폰

 

서버(Server)

자원을 제공

 

자원을 관리하고 응답(Response)을 보내는 컴퓨터

클라이언트의 요청을 처리하고 응답

  • 구글의 데이터 센터 컴퓨터

 

 

클라이언트-서버의 동작 원리

 

 

클라이언트가 요청 → 서버가 응답 → 클라이언트가 결과를 해석

 

 

사용자가 브라우저에서 구글에 접속하려고 '구글 홈페이지.html'파일을 요청

→구글 서버는 요청을 처리하고 '구글.html'파일을 클라이언트에게 전달

브라우저가 전달받은 파일을 해석사용자에게 웹 페이지를 보여줌

 

 

API

서버는 데이터를 응답할 때 HTML뿐만 아니라 API를 통해 JSON이나 XML형태의 데이터를 제공

클라이언트는 이를 사용해 동적인 콘텐츠를 보여줌

 

클라우드 서버

물리적인 서버 대신 클라우드 환경(예 : AWS, GCP)에서 서버를 운영 가능

클라이언트는 물리적 위치와 상관없이 클라우드에 접속

 

 

* 클라이언트-서버와 보안

요청과 응답은 HTTPS 프로토콜을 통해 암호화하여 안전한 통신을 보장

 

 

 

*WWW(World Wide Web)

 

전 세계에 펼쳐진 거미줄

전 세계의 컴퓨터들이 서로 연결된 네트워크를 의미

물리적으로는 해저 광케이블을 통해 연결

 

현재 위성 통신은 전 세계 인터넷 트래픽의 약 1%만 차지, 90%이상은 해저 광케이블이 처리

→케이블이 닿지 않는 히말라야, 극지방, 개발도상국 등은 인터넷 연결에 어려움을 겪음

→ 정보 격차 초래, 특정 지역이나 계층의 정보 접근 빈곤으로 이어짐

 

Starlink 프로젝트

 

일론 머스크의 Starlink

소형 위성을 통해 데이터를 주고받는 인터넷 연결 프로젝트

 

장점 : 물리적 케이블이 없는 지역에서도 인터넷 제공 가능

단점 : Starlink Train 현상으로 천체 관측에 방해가 됨 + 우주 쓰레기 문제 + 기상 조건에 따른 서비스 안정성 + 데이터 보안 문제 등..

 

 

 

[해저 케이블 맵(Submarine Cable Map) 참고]


 

웹이나 인터넷이라고 부르는 것은 전 세계의 컴퓨터가 연결된 거대한 네트워크 인프라를 활용하는 것

 

웹 프레임워크 'Django'로 클라이언트-서버 구조 기반의 네트워크 인프라 서비스를 개발

'∟Framework > ∟Django' 카테고리의 다른 글

Django - Design Patterns  (0) 2025.01.08
Django - Request & Response  (0) 2025.01.07
Django - App  (1) 2025.01.06
Django - Project  (3) 2025.01.03
Django 개발 환경 구성  (9) 2025.01.02