[UMC 3기] 서버 개념

HyeonJeong·2023년 3월 4일
0

Server

서버란,
클라이언트에게 네트워크를 통해 정보/서비스를 제공하는 컴퓨터 시스템(프로그램, 장치)을 말합니다.

서비스는 서버가 클라이언트에게 제공하는 특정 기능으로 전자 우편, 파일 전송, 원격 제어, 온라인 게임 등이 있습니다.


클라이언트 - 서버 관계

클라이언트는 정보(서비스)를 요청하고 받는 쪽 입니다.

서버는 네트워크로 연결된 컴퓨터 중 정보(서비스)를 제공하는 쪽입니다.


서버의 동작 방식과 순서

web클라이언트 ↔ web 서버 ↔ was 서버 ↔ DB

  1. 웹 서버에서 http 요청에 따른 정적 데이터 처리

  2. was 서버에서 동적 페이지 처리하거나 DB에 데이터 요청

  3. DB에 데이터를 저장하거나 필요한 데이터를 서버에 반환


Server Program

  • 웹 서버 : 클라이언트로부터 HTTP 요청 받아서 웹 페이지 반환하는 프로그램 또는 실행 컴퓨터입니다.

  • Nginx : 동시 접속에 특화된 비동기 처리 방식 웹 서버 소프트웨어로, 정적인 파일 처리, 응용 프로그램 서버에 요청 보내는(reverse proxy) 역할을 합니다.

  • Apache : Apache HTTP 서버로 많이 사용되는 웹 서버 중 하나로, 거의 모든 OS에 사용 가능하며 구축이 쉽고 다양한 추가 기능 가집니다.


DB, DBMS

  • SQL(구조화 질의어) : 관계형 DBMS을 위한 프로그래밍 언어 → 검색, 관리, 생성, 수정
    • MySQL : 가장 많이 이용되는 오픈소스 관계형 DB 관리 시스템
      • MSSSQL = Microsoft SQL : window 서버에서만 구동됨
      • ORACLE → oracle SQL developer : 오라클 DB에서 SQL 작업을 위한 통합 개발 환경
  • NoSQL : 덜 제한적으로 모델을 이용하는 데이터 저장&검색 구조 = 비관계형
    • MongoDB : 도큐먼트(본질적으로 속성의 이름 과 값으로 이루어진 쌍의 집합) 지향으로 상대적인 유연성을 가짐
    • Redis = Remote Dictionary Server : 키-값 구조의 데이터 저장&관리 시스템으로, 추상적 자료형(인터페이스와 구현 분리한 것)까지 지원합니다.
    • (apache) Cassandra : 자유-오픈 소스 분산형 DB 관리 시스템으로, 단일 장애점 없이 고성능으로 동작하여 대용량 데이터 관리를 위해 사용됩니다.

WS & WAS

  • Web Server : 정적 데이터를 처리하는 서버 → WAS 부담을 줄이고, 보안 유지
  • Web Application Server : 동적 데이터를 처리하는 서버

0개의 댓글