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

highjune님의 프로필 이미지
highjune

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

자바 백엔드 웹 기술 역사

서버의 개념

작성

·

267

1

안녕하세요 서버에 대한 이해는 어렵네요 늘.

몇 가지가 궁금합니다!

 

스프링 부트의 등장

- 과거에는 '서버'에 WAS(ex. 톰캣)을 직접 설치, 실행하고 ...

 

=> Q1) 여기에서요! '서버'는 장비서버를 얘기하는것 맞죠? 클라우드로 따진다면 EC2(리눅스 등), 예전이라면 물리적 pc1대. 

 

Q2) 그리고 WAS를 설치한다는 말은 이 장비'서버'에 프로그램 의미인 서버(WAS)를 설치한다는 말이지요?

 

Q3) 요즘의 방식(.jar를 실행만 하면 됨) 에서는 정적인 웹서버-WAS-DB 방식이 아닌 WAS-DB 방식인 거죠? 그렇다면 웹서버의 장점(역할 분산) 이 있다고 했는데 왜 그렇게 하지 않는거죠?

 

매번 친절한 질문 너무 감사합니다. 복습하는 중에 다시 궁금해졌네요! 

답변 2

1

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

아하 감사합니다. 프런트에 대한 이해가 없었어서 헷갈렸네요

 

Q3)  에 대한 질문을 이어서 드린다면 프런트(ex. 리액트 가정) 측에서 node.js로 백엔드를 구성까지 한다는 것은 즉, 리액트 소스 -> 웹 서버에 배포, node.js로 was 구성 이라고 보면 될까요?

 

그리고 한가지 더 질문드리자면

단순 정적인 응답을 하는 웹 서버에 동적이며 반응적인 리액트(프런트) 소스를 배포하는게 이해가 잘 안되네요. 반응형이고 로직이 들어가고 등의 프런트 소스이지만 단순히 정적으로 불러온 뒤에 SPA 기능을 활용하여 렌더링 되므로 이것 역시 정적이라 볼 수 있고 그래서 정적인 웹 서버에 배포를 한다는 말씀인가요?

Q3)  에 대한 질문을 이어서 드린다면 프런트(ex. 리액트 가정) 측에서 node.js로 백엔드를 구성까지 한다는 것은 즉, 리액트 소스 -> 웹 서버에 배포, node.js로 was 구성 이라고 보면 될까요?

=> 말씀해주신 맥락에서는 맞습니다. node js의 역할에 대해서는 아래 글 참고해주세요.

https://hanamon.kr/nodejs-%EA%B0%9C%EB%85%90-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0/

 

단순 정적인 응답을 하는 웹 서버에 동적이며 반응적인 리액트(프런트) 소스를 배포하는게 이해가 잘 안되네요. 반응형이고 로직이 들어가고 등의 프런트 소스이지만 단순히 정적으로 불러온 뒤에 SPA 기능을 활용하여 렌더링 되므로 이것 역시 정적이라 볼 수 있고 그래서 정적인 웹 서버에 배포를 한다는 말씀인가요?

=> 사용자의 요청에 따라 DB와 통신하며 적절한 비즈니스 로직에 의해 데이터가 처리되어져 변하는 것을 동적이라고 합니다. 말씀하신 부분은 UI 관점에서 동적인 것입니다.

 

1

안녕하세요. highjune님, 공식 서포터즈 David입니다.

.

=> Q1) 여기에서요! '서버'는 장비서버를 얘기하는것 맞죠? 클라우드로 따진다면 EC2(리눅스 등), 예전이라면 물리적 pc1대. 

=> 네, 맞습니다.

 

Q2) 그리고 WAS를 설치한다는 말은 이 장비'서버'에 프로그램 의미인 서버(WAS)를 설치한다는 말이지요?

=> 네, 맞습니다.

 Q3) 요즘의 방식(.jar를 실행만 하면 됨) 에서는 정적인 웹서버-WAS-DB 방식이 아닌 WAS-DB 방식인 거죠? 그렇다면 웹서버의 장점(역할 분산) 이 있다고 했는데 왜 그렇게 하지 않는거죠?

 

=> 아닙니다. 프론트엔드와 백엔드를 분리하여 개발하는 경우 웹서버에 프론트엔드에서 개발한 것을 배포하고, 백엔드의 경우 WAS에 배포합니다. 이 부분은 API 서버에 대한 이해가 있으셔야 합니다.

 

.
감사합니다.

highjune님의 프로필 이미지
highjune

작성한 질문수

질문하기