/infra-subway-k8s

Primary LanguageSCSSMIT LicenseMIT

npm node Website GitHub


인프라공방 샘플 서비스 - 지하철 노선도


🚀 Getting Started

Install

npm 설치

cd frontend
npm install

frontend 디렉토리에서 수행해야 합니다.

Usage

webpack server 구동

npm run dev

application 구동

./gradlew clean build

미션

  • 미션 진행 후에 아래 질문의 답을 작성하여 PR을 보내주세요.

1단계 - 쿼리 최적화

  1. 인덱스 설정을 추가하지 않고 아래 요구사항에 대해 200ms 이하(M1의 경우 2s)로 반환하도록 쿼리를 작성하세요.
  • 활동중인(Active) 부서의 현재 부서관리자 중 연봉 상위 5위안에 드는 사람들이 최근에 각 지역별로 언제 퇴실했는지 조회해보세요. (사원번호, 이름, 연봉, 직급명, 지역, 입출입구분, 입출입시간)

2단계 - 인덱스 설계

  1. 인덱스 적용해보기 실습을 진행해본 과정을 공유해주세요

3단계 - 쿠버네티스로 구성하기

  1. 클러스터를 어떻게 구성했는지 알려주세요~ (마스터 노드 : n 대, 워커 노드 n대)

  2. 스트레스 테스트 결과를 공유해주세요 (기존에 container 한대 운영시 한계점도 같이 공유해주세요)

  3. 현재 워커노드에서 몇대의 컨테이너를 운영중인지 공유해주세요


[추가] DB 미션

  1. 페이징 쿼리를 적용한 API endpoint를 알려주세요

[추가] 클러스터 운영하기

  1. kibana 링크를 알려주세요

  2. grafana 링크를 알려주세요

  3. 지하철 노선도는 어느정도로 requests를 설정하는게 적절한가요?

  4. t3.large로 구성할 경우 Node의 LimitRange, ResourceQuota는 어느정도로 설정하는게 적절한가요?

  5. 부하테스트를 고려해볼 때 Pod은 몇대정도로 구성해두는게 좋다고 생각하나요?

  6. Spinaker 링크를 알려주세요.