컴퓨터 사이언스/Network

Client Server Architecture

kimjingyu 2023. 11. 17. 19:58
728x90

Client Server Architecture 소개

클라이언트 서버 아키텍처란 다음과 같이 리소스를 사용하는 앱(클라이언트)와 리소스가 존재하는 곳(서버)를 분리시키는 모델을 의미하며, 2-tier 아키텍처라고도 부른다. 이때, 클라이언트는 웹/앱을 이용하는 사용자를 뜻하며, 클라이언트는 네이버나 구글과 같은 웹 브라우저를 통해서 서버에 원하는 데이터를 요청한다. 이렇듯 브라우저는 클라이언트가 이용하는 도구로써 사용자와 상호작용을 하게 된다. 그리고 서버는 클라이언트의 요청을 처리해서 응답한다.

2-tier Architecture

 

아래 그림을 쇼핑몰이라고 하면 클라이언트는 쇼핑몰 웹사이트를 통해서 결제, 상품 조회 기능 등을 사용할 수 있고, 클라이언트가 특정 의류 상품을 클릭하면 서버에서는 의류의 상품 정보를 보내준다.

쇼핑몰 Client Server Architecture

 

3-tier Architecture

서버 뒤쪽에 데이터베이스라고 하는 리소스를 저장하는 공간을 따로 두는 것을 3-tier Architecture라고 한다. 그래서 서버는 리소스를 전달해주는 역할만 하고, 실제 리소스는 리소스가 저장되어있는 데이터베이스에서 꺼내온다.

 

Inside the computer

아래는 컴퓨터의 마더보드를 단순하고, 직관적으로 나타낸 다이어그램이다.

여기서 I/O 버스와 연결된 확장 슬롯 중에 특정 슬롯은 네트워크 어댑터와 연결되어 있고, 네트워크 어댑터는 외부의 네트워크 통신 장치(LAN 선, 와이파이 등)과 연결되어 있다. 그렇게 네트워크에서 넘어온 정보가 어댑터를 거쳐서 I/O 버스로 들어온다. 그러면 I/O 버스에서 I/O 브릿지를 거쳐서 메모리 버스를 통해 메인 메모리에 적재된다. 이렇게 메인 메모리에 적재된 데이터는 메모리 버스와 시스템 버스를 통해서 CPU와 소통한다.

그리고 정확히 이 반대의 절차를 거쳐서 CPU에서 메인 메모리의 정보를 외부 네트워크로 보낼 수 있다. 또한 마찬가지 방식으로 외부의 보조저장장치, 그래픽 장치, USB 장치 등과 소통할 수 있다.

정리하면, 컴퓨터가 디스크와 소통하는 절차와 동일하게 네트워크와도 소통한다는 점을 기억하자.

 

인용

https://velog.io/@bining/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8%EC%99%80-%EC%84%9C%EB%B2%84

 

클라이언트 서버 모델(client server Architecture)

브라우저 : Client가 이용하는 도구 - 유저가 보는 부분을 담당 화면에 보이고, 사용자와 상호작용을 하는 것이 클라이언트이다. http 요청과 응답으로 이루어져있다. 서버와 클라이언트 사이에 응

velog.io

https://velog.io/@junttang/SP-3.2-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EA%B0%9C%EB%A1%A0-2

 

SP - 3.2 Network Programming (2)

  지난 시간까지 Application, 즉, Host 입장에서의 internet Networking 매커니즘을 알아보았다. 본 연재는, 지난 시간에도 언급한 것처럼, 네트워크가 주된 포인트가 아니다. 우리가 지금 네트워크 개념

velog.io

 

728x90