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

egpark님의 프로필 이미지
egpark

작성한 질문수

[최신] Vue 강의 끝판왕 : Nuxt 3 완벽 마스터

Rendering Modes

웹 서버, WAS 그리고 api 서버 관련

작성

·

115

0

안녕하세요,

이번 강의에서 렌더링 모드에 대해서 공부하면서 생긴 의문입니다.

 

1. server side rendering에서 server는 웹서버인가요?

  1. API server와 통신하는 것은 웹서버인가요?

  2. 저는 웹서버를 구성한 적이 없습니다. 현재 강의에서도 웹서버를 구성하는 단계는 없었고요. 웹서버는 언제/어떻게 생성되는건가요?

    사실 최근까지 웹서버, WAS에 대한 개념이 없었습니다.


    제가 만든 웹앱이 API 서버와 통신하여 데이터를 잘 가져오고, 잘 보여주고 있다! 이거구나! 싶었는데, 최근 개념의 혼란이 옵니다..

     

    관련하여 짐코딩님의 설명이 무척 궁금합니다.

답변 2

1

안녕하세요, 인프런 AI 인턴입니다.

제공된 정보에는 뷰(Vue)나 눅스(Nuxt)에 대한 구체적인 내용이 없지만, 웹 서버와 API 서버에 관한 일반적인 개념에 대해서는 답변이 가능합니다.

  1. 서버 사이드 렌더링에서의 서버는 기술적으로 웹 서버가 될 수 있습니다. 웹 서버는 클라이언트로부터 HTTP 요청을 받아 정적 콘텐츠(HTML, CSS, JavaScript 파일 등)를 제공하며, 동적 콘텐츠를 위해서는 웹 애플리케이션 서버(WAS)와 통신하여 처리할 수 있습니다.

  2. API 서버와 통신하는 주체는 보통 웹 서버 또는 웹 애플리케이션 내에서 실행되는 코드입니다. 예를 들어, 클라이언트-서버 아키텍처에서는 브라우저(클라이언트)가 직접 API 서버와 통신할 수 있고, 서버 사이드 애플리케이션에서도 API 서버와 통신해서 데이터를 가져온 후 클라이언트에게 결과를 제공할 수 있습니다.

  3. 웹 서버는 서버 소프트웨어(예: Apache, Nginx)를 설치하여 구성할 수 있습니다. 최근의 웹 애플리케이션 프레임워크들(예: Spring Boot, Express.js)은 내장된 웹 서버를 제공하여 개발자가 별도로 웹 서버를 구성하지 않아도 개발과 테스트를 쉽게 진행할 수 있게 해줍니다. 배포 시에는 각각의 환경에 맞는 추가 설정이나 웹 서버 설정이 필요할 수 있습니다.

강의와 직접 관련된 내용이 아니므로, 웹 서버나 WAS, API 서버의 구조와 역할에 대한 더 깊이 있는 이해를 원하신다면 관련 기술 문서나 추가적인 설명을 찾아보시는 것을 권장합니다. Spring Boot 같은 백엔드 프레임워크를 사용하는 웹 애플리케이션 개발에 관해서는 Spring Boot 공식 문서를 참조하시면 도움이 될 것입니다.

0

egpark님의 프로필 이미지
egpark
질문자

이 질문에 대해서 짐코딩님의 입장은

수업과 관련없는 질문이니 답변을 주지 않겠다는 것으로 이해하면 되는거죠?

 

혹시나 해서 열흘 남짓 기다려봤습니다.

못내 아쉽네요.

 

짐코딩님의 프로필 이미지
짐코딩
지식공유자

안녕하세요.

우선 말씀하신 것처럼 해당 질문은 수업 이전에 소프트웨어 개발의 전반적인 배경지식을 갖고 있어야 명확히 이해할 수 있는 질문입니다.

제가 수업과 직접적으로 관련되어 있지 않다고 해서 답변을 드리지 않는 것이 아닙니다. 제 강의를 보시면 아시겠지만, 어떤 문법을 알려드릴 때 그 문법보다 그게 무엇인지 설명하는 데 많은 에너지를 쏟고 있습니다. 그만큼 배경지식, 개념 등을 수업에서 명확히 전달 드리기 위해 많은 시간과 노력을 들이고 있습니다.

질문하신 부분을 명확히 이해하기 위해서는 소프트웨어 개발 전반적인 지식을 필요로하며, 수강생분의 배경지식도 알아야 할 뿐만 아니라 질문처럼 개념, 동작 메커니즘을 글로 설명하는 것은 정말 어렵습니다.

그래서 답변을 고민하던 찰나 인프런AI인턴이 좋은 답변을 제공하 였기에 따로 답변드리지않았습니다.

오래 기다리셨다 하니 저도 시간을 들여 2번 질문에 대해 답변 드리겠습니다.
---

질문) API server와 통신하는 것은 웹서버인가요?

우선 이 질문에서 "웹서버"라는 용어를 정적인 콘텐츠를 제공하는 웹 서버(예: Apache, Nginx)로 정의하겠습니다. 왜냐하면 흔히 대화 할 때 웹서버를 전체적(정적 또는 동적)으로도 쓰이지만 수강생분이 WAS(동적 콘텐츠 제공)를 언급 하셨기 때문에 더 명확히 정의 할게요.

본론)

API server와 통신하는 것은 경우에 따라

  1. Web Server 일 수도 있고 - 웹 서버(예: Nginx) Proxy를 통하여 웹 서버에서 API Server를 호출할 수 있습니다.

     

  2. Web Application Server 일 수도 있고 - 백엔드를 구현하다보면 서버 간 통신(Server to Server)을 하는 경우가 있습니다.

  3. Client (브라우저 또는 단말기) 일 수도 있습니다.

그리고 이렇게 언급하신 부분

수업과 관련없는 질문이니 답변을 주지 않겠다는 것으로 이해하면 되는거죠?

강의 내용과 무관한 질문에는 답변을 받지 못하는 것은 아닙니다.

수업과 관련이 없어도 수년간 지식공유를 하면서 대부분의 질문에 답변을 했습니다.

하지만 위 질문처럼 인프런AI인턴이 답변이 괜찮거나 정말 답변이 어려운경우에는 답변을 하지 않을 수 있습니다. (위 질문에 인프런AI 답변이 없었다면 어떻게든 답변을 했을 것)

나중에 경력이 더 쌓이시고 위 질문을 다시 한번 생각해보세요. 저는 아직 경험이 부족해서 쉽게 답할 수 있는 주제가 아닙니다.

egpark님의 프로필 이미지
egpark
질문자

아.. 짐코딩님.

수강평에 대한 평가는 자제해주시겠어요?

다른 수강생분의 수강평도 이런 방식으로 언급하신 걸 봤었는데.. 직접 겪으니 좀 많이 속상하네요.

 

상품에 대한 평가를 상품 판매자가 '저격'하는 것이 옳은 프로세스라고 생각하시나요?

제가 느낀 그대로를 적는게 수강평인데, 이걸 가지고 특정 강좌의 커뮤니티에 답글로서 '지적'처럼 말씀하시는 게 올바른 대응이라고 생각하시나요?

 

상황에 대한 불만은 위와 같고요. 제가 수강평에 언급한 내용을 한 번 뜯어볼까요?

질문을 드렸고, 한동안 답을 주시지 않았어요.

질문의 내용은 강좌와 직접적인 관련이 없었고요.

그래서 남긴 저의 수강평에 논리적 비약이 있나요? 없는 것을 있다고 했나요? 혹은 짐코딩님을 깎아 내리려는 의도가 있다고 보셨나요?

이해가 안되네요.

저는 이런 경험을 해서 이런 수강평을 남겼지만, 다른 경험을 하신 많은 분들은 또 다른 수강평을 남기시지 않겠어요?

egpark님의 프로필 이미지
egpark
질문자

제가 남긴 수강평에 대한 답글을 남겨주셨네요.


그리고 Q&A 피드백에서 아쉬움을 느끼셨다면 양해부탁드립니다. 제 능력이 거기 까지 미치지 못한겁니다. 아이디를 보니 작년 겨울에 제가 질의응답을 통해 하루종일 답변드렸던 분인게 기억나네요. 그때는 제 업무를 제쳐두고 최대한 답변을 드렸지만 지금은 제가 그렇게 할 수 없습니다.


수강생의 질문에 답변하는 것은 짐코딩님의 업무가 아닌가봅니다.

그렇다면 제가 이번에 느낀, '강의 내용과 무관한 질문에는 답변을 받지 못한다'는 것과 비슷한 결이어서 이해합니다.

 

더 하고 싶은 말이 많은데요, 여기까지만 하겠습니다.

짐코딩님의 프로필 이미지
짐코딩
지식공유자

제가 부족해서 그렇습니다.

주말 그리고 연휴 때 열심히 공부하시는 데 큰 도움 드리지 못한 점 양해부탁드립니다.

진심으로 수강생분의 성장을 응원하겠습니다.

 

egpark님의 프로필 이미지
egpark

작성한 질문수

질문하기