환경 구축 전 C/S 프로그램이 뭔지 어떻게 구성되어 있는지 알아보자.

 

C/S 프로그램이란

- Client&Server 방식으로 만들어진 프로그램을 의미

- Client로부터  받은 요청을 Server가 처리하고 다시 Client에게 결과를 돌려주는 방식

C/S프로그램 동작 방식

C/S 프로그램 구조

2-Tier

클라이언트와 서버가 두 개의 층으로 구성, 클라이언트가 직접 DB 서버에 접근하여 데이터를 가져온다.

 

2-Tier 아키텍처

 

장점

- 개발 및 유지보수가 쉽다: 클라이언트와 서버가 하나의 층으로 구성되어 있기 때문에, 개발 및 유지보수가 쉽습니다.

- 비용이 저렴하다: 서버가 하나만 필요하기 때문에, 비용이 저렴합니다.

 

단점

- 확장성이 떨어진다: 서버가 하나이기 때문에, 확장성이 떨어집니다.

- 성능이 떨어진다: 애플리케이션 서버와 데이터베이스 서버가 하나의 서버에 있기 때문에, 성능이 떨어집니다.

- 보안성이 떨어진다: 애플리케이션 서버와 데이터베이스 서버가 하나의 서버에 있기 때문에, 보안성이 떨어집니다.

 

3-Tier

클라이언트, 애플리케이션 서버, 데이터베이스 서버의 세 개의 층으로 구성

클라이언트가 애플리케이션 서버를 경유하여 DB에 접근하고 직접

3-Tier 아키텍처

장점

- 확장성이 좋다: 애플리케이션 서버와 데이터베이스 서버를 각각 독립적으로 확장할 수 있습니다.

- 성능이 좋다: 애플리케이션 서버와 데이터베이스 서버가 분리되어 있기 때문에, 성능이 좋습니다.

- 보안성이 좋다: 애플리케이션 서버와 데이터베이스 서버가 분리되어 있기 때문에, 보안성이 좋습니다.

 

단점

- 개발 및 유지보수가 어렵다: 클라이언트, 애플리케이션 서버, 데이터베이스 서버로 구성되어 있기 때문에, 개발 및 유지보수가 어렵습니다.

- 비용이 비싸다: 서버가 두 개 이상 필요하기 때문에, 비용이 비쌉니다.

 

취약한 테스트 C/S 프로그램 설치

준비물

- visual studio

  (https://visualstudio.microsoft.com/ko/)

- docker

  (https://www.docker.com/products/docker-desktop/)

- betaFAST(3-Tier), betaBANK(2-Tier)

   (https://github.com/NetSPI/BetaFast)

 

1. betaFAST 압축을 풀고 해당 폴더에 접근하면 SLN 파일 확인 가능

    Visual Studio를 통해 SLN 파일 열기

 

2. App.config에서 "127.0.0.1" → "betafast.net" 으로 변경

 

3. build 시도

4. 해당 폴더에서 Powershell 실행

 

5. Powershell에서 아래 명령어 순차 실행

docker-compose build

docker-compose up

 

6. etc/hosts에서 127.0.0.1, www.betafast.net  설정

 

7.betaFAST 앱 실행 확인


https://preamtree.tistory.com/39

 

[IT 기술면접 준비자료] 웹 아키택처와 WAS(Wep Application Server)

이번 포스팅에서는 웹 어플리케이션의 동작에서 핵심적인 역할을 하는 WAS에 대해 다룬다. 웹 서버(Web Server)와 혼동하는 사례가 잦아, 면접 전에 정리할 필요가 있는 개념이다. 먼저 이해를 돕기

preamtree.tistory.com

 

복사했습니다!