Web Development

서버 개발 환경 구축

Coding Kitsune 2022. 4. 30. 20:54

웹 서비스를 개발하려면 프로젝트 목적에 맞도록 하드웨어와 소프트웨어를 선정해야 한다. 

 

하드웨어 환경 개발환경

 

하드웨어 개발환경에는 크게 두가지 클라이언트 환경과 서버 환경이 있다.

 

클라이언트 환경에는 웹 브라우저, 모바일 앱 등 개개인의 기기와 연관이 있고, 

 

개발자의 입장에서는 서버 하드웨어 개발환경이 중요하다.

 

서버 환경

1. 웹 서버 

 

=> 클라이언트에서 요청하는 서비스 속도 향상을 위해 정적 컨텐츠(HTML, CSS, Image)

들을 관리하고, 합법적으로 사용자 인증을 해주며 포화 방지를 위해 응답속도(대역폭) 제한.

HTTP를 이용하여 요청/응답을 처리한다.

대표적인 웹서버(Nginx, Apache)

 

 

2. 웹 어플리케이션 서버(WAS)

 

=> 동적 컨텐츠(JSP, Servlet)를 수행하고, 데이터베이스와 연결이 되어 있으며, 웹 서버와

구별이 된다. 프로그램적으로 처리가 필요한 경우에 WAS가 동적인 서비스르 해준다.

 

 

대표적인 WAS

 

 

3. 데이터베이스 서버

 

=> DB가 설치되는 하드웨어

 

 

4. 파일 서버

 

=> 서비스 제공을 위해 파일을 저장하고 공유하는 서버

 

 

 

 

소프트웨어 환경 개발환경

 

시스템 소프트웨어 에서는 크게 3가지로 나뉘는데,

 

 

운영체제(OS)

 

미들웨어 => 컴퓨터와 컴퓨터간 연결을 안전하게 할 수 있게 관리를 도와주는 SW

                  자바 기반 환경에서 JVM을 설치하여 컨테이너로 기능을 주로 이용

 

DBMS

 

 

각각 프로젝트 요구사항에 부합하게 시스템을 선정해야 한다.

 

개발 SW는 여러가지 도구가 있으며, 각각의 기능은 다음과 같다.

 

1. 요구사항 관리도구

 

2. 설계 / 모델링 도구

 

3. 구현 도구 => 개발자의 코드 작성 및 수정을 지원하는 도구 ex) Eclipse, Visual code, Pycharm

 

 

4. 빌드 도구  => 작성한 코드의 빌드 및 배포를 수행하는 도구ex) Ant, Jenkins

 

 

5. 형상 관리 도구 => 작성 코드와 리소스의 버전 관리를 위한 도구ex) Git, CVS

 

 

6. 테스트 도구 => 코드 기능 검증와 품질을 높이기 위한 도구

ex) Spring test

 

 

 

형상 관리란(SCM) ?

=> 개발 과정에서 발생하는 산출물의 변경 사항을 버전 관리 하기 위한 활동

'Web Development' 카테고리의 다른 글

Web Server 와 WAS 의 차이  (0) 2022.06.12
SVG 태그 정의, 사용법, 예제들  (0) 2022.04.16