시작하기전

  • 여지껏 들어봤거나, 듣고 있거나, 앞으로 일하면서 들을 용어들을 설명을 할 것이다.
  • 그렇게 깊이 있는 지식이 아닌, 초심자들이 들었을때도 아 ~ 그렇구나~ 라고 끄덕거리게 하는게 목표이니 개념만 쉽게 이해하고 심도있는 내용을 추구하는 사람들은 구글링을 통해 더 깊이 있는 내용을 공부하기 바란다.


서버의 실체

  • 스타트업을 창업했다고 예를 들어보자.

  • 서버와 클라이언트를 구성한다.
  • 한 컴퓨터 안에 웹서버와 DB를 다 둔다.

  • 좀 잘된다 싶으면 유저가 많아져서 데이터 저장소를 따로 뺀다

  • 이번주 트래픽 터질지도 모른다.

  • 얘도 마찬가지

  • 그러다 이미지는 따로 저장하자고 한다. 파일 사이즈가 너무 크니까

  • 서버 상태도 체크하고 싶다고 상태체크용 서버를 또 둔다.

  • 다들 잘 모르는 사실이 있는데.. 우리가 게임을 하다가 갑자기 서버가 멈추거나 죽었을때 개발자들이 열일하고 있을 것 같지?

    • ㄴㄴ 그냥 달려가서 재부팅 함


그래서 이 컴퓨터들을 다 산다고?

  • ㄴㄴ 옛날에는 그렇게 했지만 요즘은 그렇게 하지 않는다.
  • 인터넷 환경. 즉, 클라우드 환경에서 컴퓨터를 산다.
    • 이게 우리가 종종 듣는 AWS다.
    • Amazon Web Service 이런곳에서 컴퓨터를 빌리는거다.
    • 그래서 시간제로 돈을 내거나 트래픽 단위로 돈을 낸다.
    • 요즘은 이 클라우드 환경에서 어떻게 잘 엮을것이냐 하는 것도 개발자의 자질 중에 하나다.


데이터베이스

  • Q. 방정리는 왜 하는걸까?
    1. 잘 보관하려고
    2. 잘 찾으려고
  • 정답은 2번일꺼다.
  • 데이터베이스는 데이터를 잘 찾게해주는 프로그램이다.


SQL vs NoSQL

  • SQL
    • 정형화 되어 있음.
    • 쉽게 생각해서 표를 먼저 그리고 데이터를 넣는다.
  • NoSQL
    • JSON형식으로 document를 막 쌓을 수 있다.


요약

  • 아키텍처는 매우 복잡하다. 다 알 수가 없다
  • 요새는 클라우드에서 컴퓨터를 빌려다가 그 아키텍처를 구성한다.
  • DB는 두 종류가 있다. SQL과 NoSQL. 그리고 인덱스를 태워야 빨리빨리 찾는다.
    인덱스는 뭐다? 정렬된 순서다.

Leave a comment