인프런 커뮤니티 질문&답변

nya님의 프로필 이미지

작성한 질문수

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

섹션22 서버개념에 대한 질문입니다.

해결된 질문

작성

·

499

·

수정됨

0

안녕하세요? 강의 잘 듣고 있습니다.

서버관련해서 몇가지 헷갈리는 개념이 있어서 질문드립니다.

 

  1. 서버가 백엔드만 지칭하는 용어인 줄 알았는데 프론트나 DB에도 서버개념이 있다는 것이 신기했습니다. 단순히 데이터를 제공하는 입장이면 전부 서버라는 용어를 사용해도 되는 것인가요?

  2. 브라우저와 클라이언트를 같은 개념으로 생각해도 되는지요? 더 나아가 프론트까지? (저는 백엔드 개발을 공부하고 있어서 백엔드입장에서는 브라우저, 클라이언트, 프론트가 전부 같은 포지션으로 생각됩니다.)

  3. 백엔드서버가 브라우저의 접속도 기다린다고 하셨는데 백엔드서버는 프론트엔드서버하고만 통신하는 것이 아닌가요?

    예를들어 브라우저(클라이언트?)에서 회원가입창을 클릭하고 프론트서버에서 화면을 보여줍니다.그리고 휴대폰인증번호를 입력한다고 하면, 프론트서버가 그 번호을 받아 백엔드서버로 넘겨줘서 백엔드에서 검증뒤 프론트로 보내주고, 프론트는 인증결과를 브라우저에 표시해줍니다.

    보통 이런 경우 백엔드는 브라우저가 아니라 프론트하고 교류를 하는 것이 아닌가 생각합니다.

 

근본적으로 궁금한 것은 클라이언트가 브라우저에서 이런 저런 작업(클릭, 입력)을 했을 때 브라우저, 프론트, 백엔드, DB에서 서로 어떻게 통신을 하는지 내부에서 어떤 작업들이 일어나는지등의 큰 흐름을 알고 싶은데 이건 지금 질문하기보단 강의를 끝까지 들어봐야될것 같네요 ^^;;

답변 1

2

노원두님의 프로필 이미지
노원두
지식공유자

안녕하세요! nya님!
궁금증을 가지고 열심히 공부하시는 모습 보기 좋네요!^^

  1. 네! 먼저 서버는 백엔드만을 지칭하지 않아요!
    서버는 말 그대로 서빙해주는녀석(serve + er)의 의미랍니다!
    서빙이란 제공하다(serve) 이지요?! (아르바이트 서빙도 음식을 전달해 주는 것을 의미합니다)


    그러면, 무엇을 제공해주는지에 따라서 나눠볼까요?!
    프론트엔드서버: 일반적으로 HTML을 서빙합니다
    백엔드서버: 일반적으로 JSON을 서빙합니다
    DB서버: 일반적으로 Data를 서빙합니다

    *) 메일서버: 일반적으로 mail을 서빙합니다

    image

  2. 자, 그러면 클라이언트란 영어를 해석해 보면 손님이라는 뜻이 되겠죠?!
    위 상황에서 HTML을 요청하는 브라우저가 클라이언트(손님)가 되고, HTML을 서빙해주는 프론트엔드서버가 가게가 됩니다.
    또한, JSON 데이터를 요청하는 브라우저가 클라이언트(손님)이 되고, JSON을 서빙해주는 백엔드서버가 가게가 됩니다.
    백엔드서버와 DB서버의 관계도 동일합니다.

    따라서, 클라이언트란 상황에 따르게 다양하게 사용될 수 있으며, 일반적으로는 브라우저를 의미합니다.
    *) 주의: 프론트엔드서버는 브라우저가 아니에요!

  3. 마지막으로, 3번을 이해하시기 위해서는 프론트엔드에서 사용되는 서버사이드렌더링(SSR)의 개념에 대한 이해가 필요합니다.
    현재 말씀주신 내용은 서버사이드렌더링(SSR)에 대한 내용으로, SSR과 아닌 경우의 차이를 그림으로 보도록 할게요! ㅎㅎ


    3-1) 먼저, SSR이 아닌 일반적인 경우입니다.

    image
    image
    3-2) 다음으로, SSR의 경우입니다.

    image

    3-1)과 3-2)의 결과로 둘의 차이를 비교하면 아래와 같은 차이가 있겠죠?!
    3-1) SSR아님 => 데이터가 빠진 빈 껍데기라도 먼저 보여줘서 초기 렌더링을 빠르게할래
    3-2) SSR => 데이터까지 포함해서 완성형 페이지를 한방에 보여줄래


    그러므로, SSR인지 아닌지에 따라서 누구와 교류할 것인지가 구분이 될 수 있어요!
    프론트엔드가 React, Angular, Vue 등의 라이브러리/프레임워크가 대세가 되기 이전인 기존 시대에는 모든페이지가 기본적으로 SSR 구조였다고 보시면 될 것 같아요!
    하지만, 트렌드가 변경됨에따라 현대적으로는 SSR이 필요한 페이지에서만 3-2)의 SSR을 사용하게 되고, 나머지 페이지들은 일반적으로 위 3-1) 방식을 사용하게 됩니다!

nya님의 프로필 이미지

작성한 질문수

질문하기