본문 바로가기

전체 글

(8)
2-3 Dockerized 애플리케이션 GCP에 배포하기 해당 포스팅은 class101의현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무를보고 작성되었습니다. [학습 목표] Dockerfile 만들기 Dockerfile GCP에 배포하기 Dockerfile 을 GCP에 업로드하기 위해 다음과 같은 과정을 거쳤다. Dockerfile 작성 Dockerfile 을 build 하여 Docker image 생성 DockerHub에 push Gcp instance 에서 Dockerfile pull Dockerfile 실행 실제 파일 작성 및 명령어 spring boot project에 Dockerfile 생성 Docker Hub 저장소 생성 Dockerfile build ( docker build -t {사용자 이름}/{저장소 이름} ) Docker Hub 에..
2-2 스트레스 테스트 툴로 성능 측정하기 해당 포스팅은 class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무를보고 작성되었습니다. [학습 목표] - Artillery를 이용한 부하테스트 1. Artillery를 이용한 부하테스트 node 패키지 설치 artillery 모듈 설치 ( npm install -g artillery ) artillery script 작성 ( cpu-test.yaml ) artillery script 실행 ( artillery.cmd run --output report.json ./cpu-test.yaml 생성된 report.json 을 html 파일로 변환 ( artillery.cmd report ./report.json ) 2. Stress test를 할때 주안점 예상 TPS 보다 여유롭게 테..
2-1 CPU를 극단적으로 사용하는 애플리케이션 만들기 해당 포스팅은 class101의 [현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무]를 보고 작성되었습니다. [수업 목표] 컴퓨터가 어떻게 프로그램을 실행시키는 지 알아보기 CPU bound 애플리케이션과 I/O bound 애플리케이션 알기 hash 연산을 위해 CPU를 극단적으로 사용하는 애플리케이션 만들기 GCP 인스턴스에 CPU bound 애플리케이션 수동 배포해보기 컴퓨터는 프로그램을 어떻게 실행시키는가 하드디스크에 저장된 프로그램을 실행시킨다. 프로그램이 메모리에 적재된다 (이때 메모리에 적재된 프로그램을 프로세스 라고 한다. 메모리에 올라간 프로세스를 CPU가 적절히 선택하여 실행시킨다. CPU가 선택하는 방식은 다음에서 학습할 수 있다. I/O bound 와 CPU bound 프로그..
2020 카카오 인턴십 코딩테스트 후기 https://careers.kakao.com/2020-intern 2020 kakao internship 2020 kakao internship careers.kakao.com 오늘은 카카오 인턴십 코딩테스트 시험을 치렀습니다. 이번이 카카오 3번 째 코딩테스트 도전인데 그동안의 공부가 효과가 있었는지 5문제 모두 맞았습니다. 총 5문제가 출제되었습니다. 저작권 문제로 문제를 전부 올릴 수 없어 간단한 문제 설명 및 풀이만 작성하였습니다. 댓글로 이메일 남겨주시면 문제 보내드리겠습니다. [1번 문제] 아래와 같은 전화 키패드가 있습니다. 1 2 3 4 5 6 7 8 9 * 0 # 이 전화 키패드에서 왼손 엄지와 오른손 엄지만을 이용해 숫자만을 입력할 때 입력의 시작에서 왼손 엄지는 *에 오른손 엄지는#..
2020 Dev-Matching: 웹 백엔드 코딩테스트 후기 https://programmers.co.kr/competitions/144/2020-web-be-first 2020 Dev-Matching: 웹 백엔드 개발자(상반기) 접수 20년 03월 30일 12:00 ~ 04월 17일 18:00 진행 20년 04월 18일 13:00 ~ 04월 18일 15:00 programmers.co.kr [ALGORITHM] [1번 문제] 숫자로만 이루어진 Source 문자열과 Taget 문자열이 주어지며 두 문자열의 길이는 같을때 Source 문자열의 하나의 숫자를 1늘리는 연산과 1줄이는 연산이 있는데 연산의 횟수를 최소로하여 Source 문자열을 Target 문자열로 만들었을 때 연산의 최솟값을 출력하는 문제였습니다. [1번 풀이] source 문자열과 target 문자..
[BOJ] 17071 숨박꼭질5 https://www.acmicpc.net/problem/17071 17071번: 숨바꼭질 5 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 500,000)에 있고, 동생은 점 K(0 ≤ K ≤ 500,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다. 동생은 항상 걷기만 한다. 동생은 항상 매 초마다 이동을 하며, 이동은 가속이 붙는다. 동생이 이동하는 거 www.acmicpc.net BFS 를 통해 해결하였습니다. 각 좌표에 대해 가장 먼저 도착하는 시간을 저장시켰습니다. 도착이후 2의 배수번을 더하면(+1 이..
[BOJ] 2580 스도쿠 https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루어진 정사각형 판 위에서 이뤄지는데, 게임 시작 전 몇 몇 칸에는 1부터 9까지의 숫자 중 하나가 쓰여 있다. 나머지 빈 칸을 채우는 방식은 다음과 같다. 각각의 가로줄과 세로줄에는 1부터 9까지의 숫자가 한 번씩만 나타나야 한다. 굵은 선으로 구분되어 있는 3 www.acmicpc.net 스도쿠 배열을 입력받는 중 입력값이 0인 좌표를 vector v에 저장하고 입력이 종료된 후 v에있는 좌표를 뽑아 1~9의 값을 각각 넣어..
[BOJ] 9935 문자열 폭발 https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 문제 상근이는 문자열에 폭발 문자열을 심어 놓았다. 폭발 문자열이 폭발하면 그 문자는 문자열에서 사라지며, 남은 문자열은 합쳐지게 된다. 폭발은 다음과 같은 과정으로 진행된다. 문자열이 폭발 문자열을 포함하고 있는 경우에, 모든 폭발 문자열이 폭발하게 된다. 남은 문자열을 순서대로 이어 붙여 새로운 문자열을 만든다. 새로 생긴 문자열에 폭발 문자열이 포함되어 있을 수도 있다. 폭발은 폭발 문자열이 문자열에 없을 때까지 계속된다. 상근이는 모든 폭발이 끝난 www.acmicpc.net 개인적으로 재미있게 푼 문제입니다. 문자열을 문자단위로 쪼개서 Stack에 넣고 쪼개져 들어오는 문자를 하나씩 검사해 "현재 바라보고..