본문 바로가기

자라나라 PM

웹 서버, 디비 서버?

728x90

웹 서버랑 디비 서버의 차이가 헷갈려서 알아보았다.

디비 서버와 웹 서버는 분리되어 있을 수도 있고 합쳐져 있을 수도 있다.

 

 웹 서버에 저장되는 것 (호스팅 파일들)

HTML 문서
CSS 스타일시트
자바스크립트 파일
PHP(코딩 언어)  

폰트

이미지

비디오 

 

 웹 서버란 

- 하드웨어 측면에서는 웹 서버의 소프트웨어와 웹 사이트의 컴포넌트 파일 (html문서, images, css stylesheets, JavaScript files) 을 저장하는컴퓨터

- 웹 서버는 인터넷에 연결되어 웹에 연결된 다른 기기들이 웹 서버의 데이터(컴포넌트 파일들)를 주고받을 수 있도록 한다.

- 소프트웨어 측면에서, 웹 서버는 웹 사용자가 어떻게 호스트 파일들에 접근하는지를 관리한다. 이 때 웹 서버는 HTTP서버를 말한다.

- 브라우저가 웹 서버에서 불러온 파일을 원할 때, 브라우저는 HTTP 를 통해 파일을 요청하고, 이 요청이 웹 서버(하드웨어)에 도달했을 때, HTTP 서버(소프트웨어) 는 요청된 문서를 HTTP 를 통해 보내준다

- 웹 페이지를 가져오기 위해 브라우저가 웹 서버에 요청을 보낸다.

- HTTP 웹서버는 HTTP 요청을 처리할 수 있는 웹서버이고, 아파치HTTP서버는 아파치HTTP요청을 처리하는 웹서버다.

 

출처 : https://developer.mozilla.org/ko/docs/Learn/Common_questions/What_is_a_web_server

 

- 서버는 정적 콘텐츠 혹은 동적 콘텐츠를 모두 제공할 수 있다.

- 정적 콘텐츠는 있는 그대로를 제공하는 것이다.

- 동적 콘텐츠는 서버가 콘텐츠를 처리 (심지어는 콘텐츠를 데이터베이스로부터 생성하는 것) 하는 것을 의미한다.

출처 : https://reinvite.tistory.com/86

- 식당으로 비유하면 손님(웹 클라이언트 또는 웹 브라우저) 이 직원에게 요리를 주문하면, 직원은 주방장(WAS)에게 요리를 요청한 후, 요리가 완료되면 손님에게 가져다준다. 

- 보통 웹서버는 HTML,CSS 등으로 정적인 웹페이지를 웹 클라이언트 (웹 브라우저) 에게 전달하거나 웹 브라우저 요청을 읽어 들여 WAS 에게 전달한다.

- WAS 는 DB 조회, 로직 처리 등과 같은 동적인 콘텐츠를 저리하는 서비스로 처리한 결과를 Web Server 에 전달한다. 그러면 웹 브라우저에 웹페이지 결과가 노출된다.

- WAS(와스!)는 Web Application Server : DB조회나 다양한 로직을 처리하는 동적인 콘텐츠를 처리하는 시스템으로 사용언어는 PHP, JSP, ASP, 종류는 Tomcat, Jeus, JBoss 가 있다.

- 웹서버는 정적인 콘텐츠(HTML,CSS,JPEG) 를 처리하는 시스템을 지칭하기도 하나보다. 종류는 Apache, Nginx, IIS

 

 디비서버 

- 사용자가 웹브라우저를 통해 서버에 요청하고, 서버는 요청받는 자료를 제공하듯이 디비도 마찬가지다.

- 데이터베이스 클라이언트는 데이터베이스에 요청을 해서 여러가지 명령하거나 데이터를 체크하고, 서버(DBMS) 는 저장, 수정, 삭제, 정의, 관리를 한다.

- 데이터베이스 클라이언트에서는 MySQLadmin, SQLyog 등으로 데이터베이스 서버에 접근하여 서버를 제어할 수 있다.

- 데이터베이스 서버 안에는 데이터베이스가 있다.

출처 : https://server-talk.tistory.com/276

 

 디비서버에 저장 되는 것 

MYSQL
(모든 게시판 문의, 회원정보,업로드 한 정보 등등...)

 

웹 서버와 디비 서버의 분리에 대한 것

일반적으로는 단일 서버로 운영하거나 데이터베이스 서버를 분리하여 사용하는 경우가 많다.

WAS서버와 데이터베이스 서버를 하나의 머신에 사용하지 않을 것을 여러 이유에서 권장한다. 

또한  분리하면 더 많은 동시 접속이 가능하다고 알려져 있다.

 

단일 또는 분리해서 사용 하는 경우 아래와 같다.

 

* 단일

웹 클라이언트 → 연결 ← 웹서버 WAS + 데이터베이스 서버

 

* 분리

웹 클라이언트 → 연결 ← 웹서버 WAS → 연결 ← 데이터베이스 서버

 

 

WAS 와 데이터베이스 서버 분리가 필요한 때

- WAS 에서 처리할 부분이 DB 서버에 비해 상대적으로 많은 경우.

- 이미지나 영상 등 적정 리소스를 많이 요구하는 쇼핑몰과 같은 웹사이트의 경우 상대적으로 데이터베이스 사양보다는 WAS 쪽 사양을 높이는 것이 필요하다. 그런데 만일 이 때 단일 서버로 구성 되어있다면, WAS의 성능만 높이면 되는데 데이터베이스 서버의 성능까지 함께 올려야 한다. 그래서 비효율이 발생할 수 있다.

- WAS 와 달리 데이터베이스는 다른 하드웨어에 비해 메모리에 영향을 많이 받는다. 즉 WAS 와 데이터베이스의 성능을 높이는 기술적 방법은 다르게 적용되야 하는데 단일 서버인 경우 구현에 한계가 있다.

 

WAS 와 데이터베이스 서버 분리 시 장점

1. 확장성

2. 보안성 

- 만일 WAS 서버에 해킹이 발생했다고 해도, 데이터를 따로 보관하고 있으니 보호받을 수 있다.

3. 기타 백업 

 

 

 

https://webisfree.com/2020-05-07/[%EC%84%9C%EB%B2%84%EA%B5%AC%EC%B6%95]-%EB%8B%A8%EC%9D%BC-%EC%84%9C%EB%B2%84%EC%99%80-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%84%9C%EB%B2%84%EC%9D%98-%EB%B6%84%EB%A6%AC%EA%B0%80-%EC%99%9C-%ED%95%84%EC%9A%94%ED%95%A0%EA%B9%8C 

 

[서버구축] 단일 서버와 데이터베이스 서버의 분리가 왜 필요할까

일반적으로 단일 서버로 운영하거나 아니면 데이터베이스 서버를 분리하여 사용하는 경우가 많습니다. 그렇다면 이 둘의 차이점은 무엇이고 언제 그리고 왜 이렇게 사용하는지 알아보려고 하

webisfree.com


https://developer.mozilla.org/ko/docs/Learn/Common_questions/What_is_a_web_server

 

웹 서버란 무엇일까? - Web 개발 학습하기 | MDN

여기서 우리는 웹 서버가 무엇인지, 어떻게 동작하는지, 왜 중요한지를 알아볼 것입니다.

developer.mozilla.org

https://reinvite.tistory.com/86

 

알아두면 좋은 개발용어 2 (Web Server, WAS, DB, DB테이블)

알아두면 좋은 개발용어1에서 서버-클라이언트를 잠깐 말씀드렸잖아요. 2020/07/31 - [서비스 기획] - 알아두면 좋은 개발 용어1 (서버, 클라이언트, HTML, CSS, JavaScript ) 알아두면 좋은 개발 용어1 (서

reinvite.tistory.com

https://server-talk.tistory.com/276

 

DataBases(데이터베이스) 구성 알아보기

DataBases(데이터베이스) - 구성 알아보기 이번에는 데이터베이스의 구성을 알아보겠습니다 이전글 : DataBases(데이터베이스) 의 등장배경과 사용하는 이유 - https://server-talk.tistory.com/275 이전 포스팅

server-talk.tistory.com

https://webisfree.com/2020-05-07/[%EC%84%9C%EB%B2%84%EA%B5%AC%EC%B6%95]-%EB%8B%A8%EC%9D%BC-%EC%84%9C%EB%B2%84%EC%99%80-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%84%9C%EB%B2%84%EC%9D%98-%EB%B6%84%EB%A6%AC%EA%B0%80-%EC%99%9C-%ED%95%84%EC%9A%94%ED%95%A0%EA%B9%8C 

 

[서버구축] 단일 서버와 데이터베이스 서버의 분리가 왜 필요할까

일반적으로 단일 서버로 운영하거나 아니면 데이터베이스 서버를 분리하여 사용하는 경우가 많습니다. 그렇다면 이 둘의 차이점은 무엇이고 언제 그리고 왜 이렇게 사용하는지 알아보려고 하

webisfree.com

 

728x90