일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 엘라스틱빈스톡
- DFS
- 알고리즘
- EC2
- 자바
- aws
- 인스턴스
- DP
- 카카오테크 부트캠프
- 스프링 부트
- 한국전자통신연구원
- 정보처리기사
- 코딩테스트 고득점 kit
- BFS
- 스프링부트
- 배포
- 디자인패턴
- ETRI
- Express
- 골드4
- 도커
- 백준 알고리즘
- 자료구조
- 프로그래머스
- 대전
- 골드5
- 골드3
- 정처기
- express.js
- 카테부
목록StudyNote (33)
JUINTINATION
카카오테크 부트캠프 파이널 프로젝트를 진행하면서 성능 개선을 위해 Redis를 도입하게 되었다. 우리 프로젝트는 팀별 품앗이 수를 기반으로 주기적으로 프로젝트 랭킹 스냅샷을 생성한다. 이 작업은 수많은 프로젝트 데이터를 집계하고 정렬해야 하며, 한 시점에서 하나의 스냅샷만 생성되어야 한다.처음에는 이 데이터를 RDB에서만 관리했지만, 스냅샷 생성 시점마다 프로젝트를 집계하고 정렬하는 작업이 동시에 수행되면 성능 저하나 예기치 않은 충돌이 발생할 수 있다는 우려가 있었고, 이러한 문제를 해결하기 위해 우리 프로젝트에 Redis를 도입했다.Redis란?Redis는 Remote Dictionary Server의 약자로, 데이터를 메모리에 저장해 빠르게 접근할 수 있도록 해주는 인메모리 데이터 구조 저장소다. ..
카카오테크 부트캠프 파이널 프로젝트를 진행하면서 카카오 로그인을 구현하게 되었다. 이렇게 OAuth2 Code Grant 방식으로 인증을 구현하기 전에 한 가지 고민에 빠졌는데, 바로 Access Token과 JWT 발급 시 프론트와 백엔드의 책임을 어디까지 분리할 것인가에 관한 문제였다. 이 글에서는 내가 OAuth2 인증 흐름을 구축하며 겪은 고민과, 보안과 유지보수성을 고려해 최종적으로 선택한 아키텍처를 정리해보려 한다.OAuth2 Code Grant 기본 흐름로그인 요청 → 인가 코드(Authorization Code) 발급발급된 인가 코드를 Authorization Server에 전달 → Access Token 발급Access Token으로 Resource Server에서 유저 정보 획득사용자 ..
카카오테크 부트캠프 풀스택 과정 2기에 최종 합격했지만 마냥 놀기에는 양심에 찔리고, 그렇다고 갑자기 혼자 프로젝트를 시작하자니 부담스러워서 지난 우테코 백엔드 프리코스 체험해보기(숫자 야구 게임)에 이어 자동차 경주 게임 미션에 도전했다.미션 - 자동차 경주 게임미션은 기능 요구사항, 프로그래밍 요구사항, 과제 진행 요구사항 세 가지로 구성되어 있다.세 개의 요구사항을 만족하기 위해 노력한다. 특히 기능을 구현하기 전에 기능 목록을 만들고, 기능 단위로 커밋 하는 방식으로 진행한다.이번에는 최대한 모든 요구사항을 만족하도록 코드를 작성하고, 나름 Git의 커밋 단위도 맞춰봤다. 기능 요구사항 초간단 자동차 경주 게임을 구현한다.주어진 횟수 동안 n대의 자동차는 전진 또는 멈출 수 있다.각 자동차에 이..
우테코 백엔드 프리코스는 어떻게 진행되는지 미리 경험해보기 위해 다른 블로그들을 보면서 관련 미션들을 해결해보기로 했다.미션 - 숫자 야구 게임미션은 기능 요구사항, 프로그래밍 요구사항, 과제 진행 요구사항 세 가지로 구성되어 있다.세 개의 요구사항을 만족하기 위해 노력한다. 특히 기능을 구현하기 전에 기능 목록을 만들고, 기능 단위로 커밋 하는 방식으로 진행한다.여기서 나는 일단 제대로 실행이 되는지, 테스트 코드는 제대로 통과가 되는지가 궁금했어서 기능 단위로 커밋하지는 않았다.기능 요구사항기본적으로 1부터 9까지 서로 다른 수로 이루어진 3자리의 수를 맞추는 게임이다.같은 수가 같은 자리에 있으면 스트라이크, 다른 자리에 있으면 볼, 같은 수가 전혀 없으면 포볼 또는 낫싱이란 힌트를 얻고, 그 힌트..
원래 이런 일기 같은 글은 잘 안 쓰긴 하지만.. 생각해 보니 올해 큰 이벤트가 많았어서 그냥 기록 차 적어두려 한다.1~2월, ETRI 2024 동계 연구연수생2개월 동안의 나의 첫 인턴 생활이었다. 사실 이런 연구 쪽은 관심이 없기도 했고, 잘 모르기도 해서 걱정이 많았었다. 그래도 같이 대전에서 각자 원룸잡고 출퇴근하며 동고동락한 대학 동기들이 있어서 다행이었다.같이 일했던 입사 동기들은 잘 지내고 있을까? 박사님들도 잘 지내고 계실까? 오랜만에 그때 매주 적었던 글들을 읽으면서 잠시 추억에 잠겼다.3월, 개강과 뉴노멀 프로젝트이제 와서 생각해 보니 개강하자마자 올해의 다사다난함은 예정되어 있던 것 같다. 개강 바로 전날 밤, 졸업 작품 발표를 위한 수업인 종합설계 과목의 내가 수강신청했던 분반이 ..
사실 지난 학술제를 준비하면서 동시에 SSAFY에도 지원했었다. 전역한 직후에 뉴스에서 10기까지만 한다고 했던 것 같은데 13기 모집이라니.. 아무튼 들어가기도 힘들고, 주변에 아무도 지원을 안 한다고 해서 학술제 준비 때문에 바쁠 것 같고, 코테 준비도 하나도 안 되있던 상태라 처음에는 신청도 안 하려고 했다. 그러다 친한 형이 같이 신청하자고 해서 끝까지 거절했다가 결국 설득당해서 경험이라도 해보자는 마인드로 지원했었던 것 같다.지원서 작성지원서에는 인적사항, 성적을 포함한 학력, 교육희망지역, 경력사항, 병역사항, 어학사항 등이 들어간다.교육희망지역은 서울, 대전, 광주, 구미, 부울경 이렇게 5개 중에서 1~3지망을 선택하면 된다. 내가 선택한 교육희망지역은 1지망 서울, 2지망 대전, 3지망 ..