2007년도(모바일 혁명) 부터 스마트폰이 등장하면서 컴퓨터가 늘어나고 데이터가 어마어마하게 많아지면서 이 빅데이터를 효율적으로 관리할 수 있는 방법론이 필요하게 되었다.
기존에는 1대의 물리적인 서버에 1개의 OS만 설치하여 사용하였지만 성능을 효율적으로 사용하기 위해 하나의 서버에 가상화 기술을 통하여 여러개의 OS를 설치하고 그 위에 여러개의 어플리케이션을 설치함으로서 데이터를 효율적으로 관리하게 되었고 이것을 클라우드컴퓨팅 이라 한다.
또한 이처험 보관한 방대한 데이터들을 효율적으로 분석,추출하고 사용하기위하여 등장한 것이 AI이다.
빅데이터/클라우드/AI 이 세가지는 떼어놓고 설명할수 없으며 최근 백엔드 개발자에게 이 세가지의 관한 지식이 요구되고 있다
클라우드 컴퓨팅 :
클라우드 컴퓨팅이 제공하는 서비스:
클라우드는 하드웨어
가상화
기술로 H/W자원활용을 S/W적으로 극대화 시킬 수 있는 기술
호스트 가상화 기술 : 사용자의 컴퓨터에서 사용하는 가상화 기술(ex : vmware)
하드웨어어 하나의 OS를 설치 한 후 가상화 소프트웨어를 설치 하고 그 위에 여러 OS를 설치. 속도가 떨어짐
하이퍼바이저 가상화 기술 : 클라우드에서 사용하는 가상화 기술
하드웨어 위에 바로 하이퍼바이저 가상화 기술을 설치하고 여러 OS를 설치
Iaas :
PaaS :
SaaS :
서버 호스팅 : 서버 자체를 임대해서 사용 OS만 설치되어있음 세팅필요
웹 호스팅 : 환경을 미리 세팅한 공간을 판매 웹 리소스를 바로 호스팅 할 수 있음
Azuer에서는 IaaS → 가상머신(VM), PaaS → App Services
DevOps란 :
고객에게 지속적인 가치를 제공하기 위해 소프트웨어의 제공을 자동화하는것
→ 안정적이고 지속적으로 서비스를 제공하기위해서 자동적으로 빌드패포
→ CI / CD 를 통한 지속적인 배포
CI : 개발 소스의 지속적인 통합 원격 레포지토리에 소스를 지속적으로 통합, 버전관리
CD : 코드가 커밋될때마다 빌드하고 지속적으로 배포
Azuer 에서는 CI → Azure Repos, CD → Azure Pipelines
yarn create react-app reactsampleapp1
으로 React 프로젝트 생성yarn build
로 빌드express nodewebapp1 --view=ejs
로 Node Express 프로젝트 생성
우와 정말 정리를 잘 하셨어요!