공부

[ASAC] 연속성, 동시성, 그리고 서버 선택

wjddnr0208 2024. 12. 24. 13:24

연속성 : Blocking vs Non-Blocking

연속성은 작업이 수행되는 동안 CPU가 멈추는지 여부를 중심으로 구분된다.

  • Blocking
    • 하나의 작업이 간간히 방해받으며 수행된다.
      • 방해 : 작업 상태를 주기적으로 확인하거나 자원을 기다리기 위해 잠시 멈추는 경우가 된다.
  • Non-Blocking
    • 작업이 어떠한 방해도 받지 않고 수행된다.
    • 자원을 기다리는 동안에도 다른 작업을 계속 진행할 수 있습니다.

동시성 : Synchronous vs Asynchronous

동시성은 작업의 병렬 처리 가능 여부를 중심으로 구분된다.

  • Synchronous (동기)
    • 앞선 작업이 완료된 후에 다음 작업을 수행한다
    • 작업이 끝날 때까지 현재 작업이 대기 상태에 머문다.
  • Asynchronous (비동기)
    • 앞선 작업이 완료되지 않아도 다음 작업을 수행한다
    • 작업이 끝나면 응답(CallBack)을 통해 결과를 알려준다.

출처 : Asac 07 강의 자료


서버 인프라의 구성 : 물리 서버 vs 클라우드 서버

서버를 구성하는 방식은 크게 물리 서버클라우드 서버로 나뉜다.


물리 서버 (On-Premise)

물리 서버는 직접 데이터센터를 구축하거나 호스팅 업체를 통해 서버를 임대받아 사용하는 방식이다.

  • 특징
    • 데이터센터 구축에 따른 고정 비용 발생.
    • 서버의 직접 운영 및 관리가 필요.
  • 단점
    • 서버 조립, 배치 장소 확보, 네트워크 설정.
    • 전기 공급, 냉방 시스템, 백업 시스템 구축.
    • 한 번 구매하면, 사용량과 관계없이 계속 관리와 비용이 발생.

가상 서버 (클라우드 서버)

클라우드 서버는 데이터센터의 서버를 가상화하여 사용자가 필요에 따라 임대받는 방식이다.

  • 특징
    • 온디맨드 비용으로 운영 (필요한 만큼만 사용).
    • AWS, Azure와 같은 클라우드 제공 업체가 대신 서버를 관리.
  • 장점
    • 몇 번의 클릭만으로 서버와 네트워크 구성 완료.
    • 사용량에 따라 비용이 발생하므로 불필요한 자원 낭비가 없음.
    • 트래픽이 증가하면 자동으로 서버를 확장하고 감소하면 서버를 축소하여 비용 절감.

출처 : Asac 07 강의 자료


서버리스(Serverless)란?

서버리스는 물리 서버클라우드 서버를 사용하는 것이 아니라 특정 작업을 수행할 때만 서버를 생성하고 이후에는 삭제하는 방식을 의미한다

  • 특징
    • 요청이 들어오면 서버를 생성 → 작업 처리 → 서버 종료.
    • 서버가 계속 떠 있는 상태가 아니므로 시간이 아닌 요청 횟수에 따라 과금된다.

*서버리스는 "서버가 없는 것"이 아니라, 서버를 직접 소유하거나 계속 운영하지 않는 방식을 뜻한다.