[Daily Contents] System과 Infra


System

  • 목적에 맞춰서 만든 체계

Infra

  • (특정한 APP을 활용한 서비스를 운영하기 위해) 필요한 다양한 하드웨어나 운영체제, 미들웨어, 네트워크 등 시스템의 기반을 총칭
  • IT 인프라 = 시스템들의 기반 체계

Infra의 4대 구성 요소

  • 하드웨어
  • 운영체제
  • 네트워크
  • 미들웨어
    • 운영체제와 소프트웨어, 소프트웨어와 소프트웨어 간에 통신, 중재하는 역할을 하는 소프트웨어.
    • 상황에 따라 시스템에 편입되기도 하고, 인프라에 편입되기도 함
    • 가장 흔하게 접하게 될 미들웨어는 웹서버, 웹 애플리케이션 서버(WAS), DBA(Database Management System), Nginx
  • 사용자는 인프라가 어떻게 구성되어 있는지 딱히 느끼지 못한다!

Legacy는 뭘까?

  1. 오래된 시스템
  2. 구성 시스템
    • 현재는 AWS, Azure와 같은 가상화 시스템이 우세하고 있는 상황. 기존의 물리적인 서버를 가지고 있는 업체들은 기존 물리 서버를 활용하면서 시스템의 확장을 고려해야 한다. 반면에 신규 서비스를 만들 때는 물리 서버를 구축할 필요 없이 클라우드로 서버를 구축하면 되겠다!

System과 Infra의 관계

제목 없음

image

Q & A

SSAFY의 Infra를 어떻게 사용할 수 있나요?

  • 서버는 Amazon EC2, 운영체제는 Ubuntu, 공개망으로 제공됨
  • 여러분의 ApplicationInfra, System에 올리기만 하면 돌아갑니다.

Application은 시스템이 아닌가요?

  • System과는 구별되는 개념
  • 채팅 시스템을 구현했다고 생각해 보자!
    • 카카오톡, 매터모스트처럼 다른 애플리케이션이 올라가도 서비스는 가능하다.
    • Application에 사용될 뼈대라고 생각하면 될까?


​아키텍쳐가 아닌 개발자라도 시스템 인프라를 체계적으로 파악했을 때와 파악하지 못했을 때 더 효율적인 개발이 가능할까요?

  • 시스템, 인프라는 지금은 SSAFY에서 제공해주지만 사실은 굉장히 넓은 영역
  • 조금이라도 흐름을 알아두면 프로젝트를 조금 더 짜임새 있게 설계하는 데에 도움이 되지 않을까?
  • 회사에 가면 인프라 팀이 있어서 인프라를 개발할 일은 적지만, 인프라를 이해하고 개발하는 것과 이해하지 못하고 개발하는 것은 차이가 있음!


jvm도 미들웨어인가요?

  • 그렇다고 볼 수 있다. 직접 다루는 게 아닌, 자바를 설치하면 알아서 동작하도록 도움을 주기 때문


인프라 공부에 순서가 있을까요?

  • 순서는 없다. 프로젝트를 만들었을 때 모르는 것들을 만나면 그때그때 공부해보자!


설계도 작성 시 시스템과 인프라를 구분해서 나타내주어야 할까요?

  • 보통은 시스템 설계도, 인프라 설계도 따로따로 작성한다. 다들 잘 모르기 때문에… 알고 있다면 강점이 될 것


Django 는 웹 애플리케이션 프레임워크던데 미들웨어인가요 서버인가요?

  • Django를 실행하려면 python이 필요하기 때문에, python을 미들웨어로 보는 게 맞다.
  • python 위에 Django라는 프레임워크와 프레임워크로 만든 나만의 앱이 있는 것
  • 미들웨어는 개발을 도와주는 도구라고 생각해보자!


서버 인프라에서 ubuntucentos를 선택하는 기준이 있을까요?

  • 국내에서는 centOS가 많았지만 지원이 중단되면서 2021년 중반부터는 ubuntu로 많이들 옮기고 있다.

댓글남기기